avianca xml training

109
XXMMLLBBaassiiccssaannddAAuutthoorriinngg

Upload: javier-e-fonseca

Post on 24-Nov-2015

34 views

Category:

Documents


1 download

TRANSCRIPT

  • XXMMLL BBaassiiccss aanndd AAuutthhoorriinngg

  • XML Basics and Authoring 3

    CCoonntteennttss

    eXtensible Markup Language.......................................................................................5eXtensible Markup Language ................................................................................6Well-formed Documents........................................................................................9Character and Entity References ...........................................................................9XInclude ............................................................................................................10XML Namespace ................................................................................................ 11Document Type Definitions..................................................................................12XML Schema .....................................................................................................14

    XPath.......................................................................................................................17What is XPath?...................................................................................................18Nodes................................................................................................................18Navigating the XPath Node Tree..........................................................................20Reading XPath Expressions ................................................................................22

    TechSuite .................................................................................................................25TechSuite Oveview .............................................................................................26TechSuite System Structure ................................................................................26TechSuite System Components ...........................................................................28Manual Lifecycle.................................................................................................30

    Using TechAuthor......................................................................................................35TechAuthor Overview..........................................................................................36Authoring Basics ................................................................................................36Creating a New Document...................................................................................41Inserting Markup.................................................................................................45Working with Attributes........................................................................................53Managing Content ..............................................................................................55Managing Airline Data.........................................................................................72Managing Changes.............................................................................................78Revision Management ........................................................................................90

  • 11eeXXtteennssiibbllee MMaarrkkuupp LLaanngguuaaggee

    eXtensible Markup Language .........................................................................................................6Well-formed Documents.................................................................................................................9Character and Entity References ....................................................................................................9XInclude .....................................................................................................................................10XML Namespace......................................................................................................................... 11Document Type Definitions ..........................................................................................................12XML Schema ..............................................................................................................................14

    XML Basics and Authoring 5

  • 6 XML Basics and Authoring

    eeXXtteennssiibbllee MMaarrkkuupp LLaanngguuaaggeeThe eeXXtteennssiibbllee MMaarrkkuupp LLaanngguuaaggee (XML) draws on the specification of SGML. UsingSGML as the starting point allowed the design team to concentrate on making a provenmarkup language simpler.

    XML 1.0 became a World Wide Web Consortium (or W3C http://www.w3.org)recommendation in February, 1998.

    UUnniiccooddee CChhaarraacctteerrBy definition, an XML document is a string of characters. Almost every legal Unicodecharacter may appear in an XML document.

    PPrroocceessssoorr aanndd AApppplliiccaattiioonnA pprroocceessssoorr is expected to work in the service of an aapppplliiccaattiioonn. There are certain veryspecific requirements about what an XML processor must do and not do but none as to thebehavior of the application. The processor (as the specification calls it) is often referred tocolloquially as an XXMMLL ppaarrsseerr.

    XXMMLL DDeeccllaarraattiioonnAll XML documents may (and should) begin with a single XXMMLL ddeeccllaarraattiioonn. The XMLdeclaration provides, at a minimum, the version number of XML in use and can also specifythe character encoding used in the document.

    All XML parsers are required to support the Unicode UTF-8 and UTF-16 encodings; manyXML parsers support other encodings, such as ISO-8859-1, as well.

    NNootteeUnlike most XML attributes, the encoding attribute values are not case-sensitive.

    MMaarrkkuupp aanndd CCoonntteennttThe characters that make up an XML document are divided into mmaarrkkuupp and ccoonntteenntt.Markup and content may be distinguished by the application of simple syntactic rules. Allstrings that constitute markup begin either with the less-than sign angle bracket character () or begin with theampersand character (&&) and end with the semicolon character (;;). Strings of characters thatare not markup are content.

    This is thecontent.

    TechPubs Global, Inc.

  • eXtensible Markup Language 7

    In the example, the two para tags form one element, and the nbsp is another. The phraseoutside of those elementsThis is the content.is the content contained within the markup.

    TTaaggssA ttaagg is markup construct that begins with a less-than sign angle bracket ().

    Tags come in three varieties:

    start-tags, for example

    end-tags, for example

    empty-element tags, for example

    EElleemmeennttssAn eelleemmeenntt is a logical component of a document that either begins with a start-tag and endswith an end-tag or consists only of an empty-element tag. The characters between the start-and end-tags, if any, are the element's content and may contain markup, including otherelements, which are called child elements.

    An example of an element is:

    HHeelllloo,, wwoorrlldd..

    Elements may not overlap; an end tag must always have the same name as the most recentunmatched start tag.

    President Habibe>

    President Habibe>

    An XML document has exactly one root element.

    ......

    ...

    XML element names are case-sensitive, so location and Location refer to differentelements. For people used to working with HTML or other SGML document types, this tendsto be difficult because it can cause surprising bugs in processing software or can even lead tomalformed XML documents.

    polar bear

    polar bear

  • 8 XML Basics and Authoring

    AAttttrriibbuutteessIf elements are the nouns of XML, the aattttrriibbuutteess are its adjectives.

    Every attribute assignment consists of two parts: the attribute name and the attribute value. Inthe following example, the name of the attribute is number and the value is 3:

    Connect A to B.

    Attribute names should never appear in quotation marks, but attribute values must alwaysappear in quotation marks in XML (unlike HTML), using the " or ' characters. Attributevalues must always be delimited strings that may contain entity references, characterreferences, and/or text characters. Attribute names in XML (unlike HTML) are case-sensitive; HREF and href refer to two different XML attributes.

    NNootteeAn element may not have two attributes with the same name.

    XXMMLLWWhhiitteessppaacceeXML considers four characters to be whitespace:

    Carriage return (\r or ch[13])

    Linefeed (\n or ch[10])

    Tab (\t)

    Spacebar (' ')

    In XML documents, there are two types of whitespace:

    SSiiggnniiffiiccaanntt wwhhiitteessppaaccee is part of the document content and should be preserved.

    IInnssiiggnniiffiiccaanntt wwhhiitteessppaaccee is used when editing XML documents for readability. Thesewhitespaces are typically not intended for inclusion in the delivery of the document.

    All whitespace characters within the content are preserved by the parser and passedunmodified to the application, while whitespace within element tags and attribute values maybe removed.

    CCoommmmeennttssCCoommmmeennttss allow you to insert notes into a document that are meaningful to the documentscreator and editors but are not truly part of the documents context. Comments may appearanywhere in a document outside of other markup.

    The basic syntax of an XML comment is:

    NNootteeComments are not part of a documents character data. Within a comments section, entitiesare not expanded, nor is any markup interpreted.

    TechPubs Global, Inc.

  • eXtensible Markup Language 9

    PPrroocceessssiinngg IInnssttrruuccttiioonnssXML, like SGML, is a descriptive markup language; it does not presume to try to explainhow to handle an element or its contents. This provides for presentation flexibility andindependence. However, there are times when it is advantageous to pass hints to anapplication along with the document. The pprroocceessssiinngg iinnssttrruuccttiioonn (PI) is the mechanism thatXML provides for this purpose.

    PIs use a variation of XML element syntax:

    An example of an Arbortext Processing Instruction:

    some word

    WWeellll--ffoorrmmeedd DDooccuummeennttssA wweellll--ffoorrmmeedd XML document is defined as an XML document that has correct XMLsyntax. According to W3C, this means:

    XML documents must have a root element.

    XML elements must have a closing tag.

    XML tags are case-sensitive.

    XML elements must be properly nested.

    XML attribute values must always be quoted.

    NNootteeWell-formedness should not be confused with a valid XML document, which is defined as a"well-formed" XML document that also conforms to the rules of a document type definition(DTD) or an XML schema (XSD).

    CChhaarraacctteerr aanndd EEnnttiittyy RReeffeerreenncceessXML provides two simple methods of representing characters.

    CChhaarraacctteerr RReeffeerreenncceessIn SGML, HTML, and XML documents, the logical constructs known as character data andattribute values consist of sequences of characters in which each character can manifestdirectly (representing itself) or can be represented by a series of characters called a cchhaarraacctteerrrreeffeerreennccee.

    There are two types:

    numeric character reference

    character entity reference

  • 10 XML Basics and Authoring

    A numeric character reference refers to a character by its Universal Character Set/Unicodecode point and uses the format:

    nnnn

    or

    hhhh

    where nnnn is the code point in decimal form and hhhh is the code point in hexadecimalform.

    NNootteeThe x must be lowercase in XML documents. The nnnn or hhhh may be any number ofdigits and may include leading zeros. The hhhh may mix uppercase and lowercase, thoughuppercase is the usual style.

    EEnnttiittyy RReeffeerreenncceessEntity references allow the insert of any string literal into element content or attribute values.Character entity reference refers to a character by the name of an entity that has the desiredcharacter as its replacement text. The entity must either be predefined (built in to the markuplanguage) or explicitly declared in a document type definition (DTD). The format is the samefor any entity reference:

    &name;

    where name is the name of the entity. The semicolon is required.

    The XML specification defines five "predefined entities" representing special characters andrequires that all XML processors honor them.

    SSppeecciiaall CChhaarraacctteerrss

    NNaammee CChhaarraacctteerrUUnniiccooddee ccooddee ppooiinntt((ddeecciimmaall)) DDeessccrriippttiioonn

    quot " U+0022 (34) (double) quotation mark

    amp & U+0026 (38) ampersand

    apos ' U+0027 (39) apostrophe (= apostrophe-quote)

    lt < U+003C (60) less-than sign

    gt > U+003E (62) greater-than sign

    XXIInncclluuddeeXXIInncclluuddee is a generic mechanism for merging XML documents by writing inclusion tags inthe "main" document to automatically include other documents or parts thereof. The resultingdocument becomes a single composite XML information set.

    TechPubs Global, Inc.

  • eXtensible Markup Language 11

    For example, including the text file license.txt:

    This document is published under GNU Free Documentation License

    in an XHTML document:

    ...

    ...

    ...

    gives:

    ...

    ...

    ...This document is published under GNU Free Documentation License

    XXMMLL NNaammeessppaacceeXXMMLL nnaammeessppaacceess are used to provide uniquely named elements and attributes in an XMLdocument. They are defined in Namespaces in XML, a W3C recommendation.

    An XML instance may contain element or attribute names from more than one XMLvocabulary. If each vocabulary is given a namespace, the ambiguity between identicallynamed elements or attributes can be resolved.

    A simple example would be to consider an XML instance that contained references to acustomer and an ordered product. Both the customer element and the product element couldhave a child element named id. References to the id element would therefore be ambiguous;placing them in different namespaces would remove the ambiguity.

    NNaammeessppaaccee DDeeccllaarraattiioonnA namespace is declared using the reserved XML attribute xmlns, the value of which must bean Internationalized Resource Identifier (IRI), usually a Uniform Resource Identifier (URI)reference.

    For example:

    xmlns="http://www.w3.org/1999/xhtml"

  • 12 XML Basics and Authoring

    The namespace specification does not require or suggest that the namespace URI be used toretrieve information; an XML parser simply treats it as a string. For example, the document athttp://www.w3.org/1999/xhtml itself does not contain any code. It simply describes theXHTML namespace to human readers. Using a URI (such as "http://www.w3.org/1999/xhtml") to identify a namespace, rather than a simple string (such as "xhtml"), reduces thepossibility of different namespaces using duplicate identifiers.

    Namespaces can also be mapped to prefixes in namespace declarations. For example:

    xmlns:xhtml="http://www.w3.org/1999/xhtml"

    In this case, any element or attribute names that start with the prefix "xhtml:" areconsidered to be in the XHTML namespace.

    DDooccuummeenntt TTyyppee DDeeffiinniittiioonnssA ddooccuummeenntt ttyyppee ddeeffiinniittiioonn (DTD) file uses formal grammar to specify the structure andpermissible values of XML documents.

    In a DTD, the structure of a class of documents is described via element and attribute listdeclarations:

    Element declarations name the allowable set of elements within the document and specifywhether and how declared elements and runs of character data may be contained withineach element.

    Attribute list declarations name the allowable set of attributes for each declared element,including the type of each attribute value, if not an explicit set of valid value(s).

    EElleemmeenntt DDeeccllaarraattiioonnssAn eelleemmeenntt ddeeccllaarraattiioonn defines an element and its possible content. A valid XML documentonly contains elements that are defined in the DTD.

    An elements content is specified by some key words and characters:

    EMPTY for no content

    ANY for any content

    , for orders

    | for alternatives ("either...or")

    ( ) for groups

    * for any number (zero or more)

    + for at least once (one or more)

    ? for optional (zero or one)

    TechPubs Global, Inc.

  • eXtensible Markup Language 13

    NNootteeIf there is no *, +, or ?, the element must occur exactly one time.

    EExxaammpplleess::

    AAttttrriibbuuttee LLiisstt DDeeccllaarraattiioonnssAn aattttrriibbuuttee lliisstt ddeeccllaarraattiioonn specifies the name, data type, and default value of eachattribute associated with a given element type.

    EExxaammppllee::

    The following attribute types are available:

    AAttttrriibbuuttee TTyyppeess

    AAttttrriibbuuttee TTyyppee MMeeaanniinngg

    CDATA Character data (string)

    ID Unique name within a given document

    IDREF Reference to some element bearing an ID attributepossessing the same value as the IDREF attribute

    IDREFS Series of IDREFs delimited by white space

    ENTITY Name of a predefined external entity

    ENTITIES Series of ENTITY names delimited by white space

    NMTOKEN A name

    NMTOKES A series of NMTOKENs delimited by white space

    NOTATION One of a set of names indicating notation types de-clared in the DTD

    [Enumerated Value] One of a series of explicitly user-defined values thatthe attribute can take on

    A default value can be used to define whether an attribute must occur (#REQUIRED) or not(#IMPLIED), whether it has a fixed value (#FIXED), and which value should be used as adefault value ("") in case the given attribute is left out in an XML tag.

  • 14 XML Basics and Authoring

    AAssssoocciiaattiinngg DDTTDDss wwiitthh DDooccuummeennttssA DTD is associated with an XML document via a ddooccuummeenntt ttyyppee ddeeccllaarraattiioonn that appearsnear the start of the XML document. The declaration establishes that the document is aninstance of the type defined by the referenced DTD.

    The declarations in a DTD are divided into an internal subset and an external subset. Thedeclarations in the internal subset are embedded in the document type declaration in thedocument itself. The declarations in the external subset are located in a separate text file. Theexternal subset may be referenced via a public identifier and/or a system identifier.

    Example of a document type declaration containing both public and system identifiers:

    NNootteePublic identifiers are mapped to system identifiers in catalogs that are optionally madeavailable to the document parsing software.

    XXMMLL SScchheemmaaXXMMLL SScchheemmaa was published as a W3C recommendation in May, 2001. Due to the confusionbetween XML Schema as a specific W3C specification and the use of the same term todescribe schema languages in general, some parts of the user community refer to thislanguage as XML schema document (XSD).

    Like all XML schema languages, XSD can be used to express a set of rules to which an XMLdocument must conform in order to be considered valid according to that schema.However, unlike most other schema languages, XSD was also designed with the intent thatdetermination of a document's validity would produce a collection of information adhering tospecific data types.

    Unlike DTDs, an XML schema allows the content of an element or attribute to be validatedagainst a data type. For example, an attribute might be constrained to be a valid date or adecimal number.

    XSD provides a set of 19 primitive data types (boolean, string, decimal, double,float, anyURI, QName, hexBinary, base64Binary, duration, date, time,dateTime, gYear, gYearMonth, gMonth, gMonthDay, gDay, and NOTATION).

    XSD allows new data types to be constructed from these primitives by three mechanisms:

    RReessttrriiccttiioonn: Reducing the set of permitted values

    LLiisstt: Allowing a sequence of values

    UUnniioonn: Allowing a choice of values from several types

    EExxaammppllee

    TechPubs Global, Inc.

  • eXtensible Markup Language 15

    SScchheemmaa SSuuppppoorrttThe Schema Support feature extends Arbortext support of the W3C Schema specification.

    Initial schema support was added to the Arbortext 4.3 release and was limited to batch modevalidation. Real-time schema validation against one or more XML schema definitions wasadded in Arbortext 5.0.

    SScchheemmaa SSuuppppoorrtt FFeeaattuurreessThe following features are available with Schema Support:

    RReeppllaaccee MMaarrkkIItt bbyy AAppaacchhee XXeerrcceess--CC++++ 22..66..00 ppaarrsseerr ffoorr XXMMLL vvaalliiddaattiioonn: TheMarkIt parser is still used for SGML validation. The most noticeable change for a user isthat it is no longer necessary to compile doctype for XML document. DTD or schemadeclared in a document are parsed on the fly when a document is opened.

    SSuuppppoorrtt sscchheemmaa--oonnllyy ddooccuummeennttss: Documents may have a !DOCTYPE declaration, aschema declaration, a namespace declaration, or some combination of these items. Thedoctype directory for documents that do not have a !DOCTYPE declaration, just a schemadeclaration, are resolved.

  • 16 XML Basics and Authoring

    PPeerrffoorrmm rruunnttiimmee vvaalliiddaattiioonn ooff ddaattaa ttyyppeess iinn aattttrriibbuutteess: Arbortext supports real-timevalidation of data types as defined in the schema.

    PPeerrffoorrmm rruunnttiimmee vvaalliiddaattiioonn ooff ccoonntteenntt mmooddeell ffrroomm tthhee sscchheemmaa: A schema has theability to define the allowed content for an element.

    GGeenneerraattee rreeqquuiirreedd mmaarrkkuupp: Similar to DTD support, when inserting an element thatincludes required children elements into a schema-only document, the children elementsare generated automatically.

    DDeetteerrmmiinniinngg tthhee DDooccttyyppee DDiirreeccttoorryyThere are two methods to determine the appropriate doctype directory from a schema:

    CCaattaalloogg EEnnttrryy

    Documents can specify their schema using a default namespace declaration on the rootelement instead of a !DOCTYPE declaration. Arbortext Editor uses the namespace URI tolocate the schema (.xsd or .dtd) and the associated document type directory. Thenamespace URI must be declared in a catalog using the URI catalog entry to map thenamespace URI into a DTD or schema file.

    DDooccuummeenntt EExxaammppllee

    CCaattaalloogg EEnnttrryy

    URI "http://www.arbortext.com/namespace/doctypes/avsdocbook""avsdocbook.xsd"

    NNootteeEach namespace can have only one schema associated with it.

    SScchheemmaa LLooccaattiioonn HHiinnttss

    The document type can also be located by specifying schema location hints on the rootelement. Arbortext Editor supports both of the following attributes:

    xsi:schemaLocation

    xsi:noNameSpaceSchemaLocation

    If the namespace is not resolved by a URI catalog entry, the location is used as the URI tosearch the catalog. If that location is not resolved, it is used as a system identifier.

    TechPubs Global, Inc.

  • 22XXPPaatthh

    What is XPath? ...........................................................................................................................18Nodes ........................................................................................................................................18Navigating the XPath Node Tree...................................................................................................20Reading XPath Expressions.........................................................................................................22

    XML Basics and Authoring 17

  • 18 XML Basics and Authoring

    WWhhaatt iiss XXPPaatthh??XXPPaatthh is a language for addressing parts of an XML document. Understanding XPath willhelp you in XSLT, Styler, XSL-FO, DOM, AOM, and ACL development.

    XPath deals with information not markup. Markup serves as a way to access information.

    An XML developer deals with nodes not characters of markup. The content of a source file isderived according to a data model for the markup.

    A processor performs all operations on the source node tree not on the input file directly.

    NNooddeessThere are seven types of nodes:

    Root node /

    Element node

    Text node text()

    Attribute node @

    Comment node comment()

    Processing instruction processing-instruction()

    Namespace node

    RRoooott NNooddeeThe root node has the following qualities:

    Only node in a tree without a parent

    Appears as the parent of the document element

    NNootteeThe root is the parent of the outermost element.

    Has the value of the document element

    EElleemmeenntt NNooddeeThe element node has the following qualities:

    Single named node created in document order for each element

    Child of its parent node

    TechPubs Global, Inc.

  • XPath 19

    May have child content nodes that could be either text, elements, comments, orprocessing instruction nodes

    May have attached non-content nodes, such as attribute nodes or namespace declarationnodes. Note that these types of nodes are not considered child nodes of the element node.

    TTeexxtt NNooddeeThe text node has the following qualities:

    Single unnamed node created for a string of adjacent characters data that is not documentmarkup

    Child of its parent node

    Never has any children nodes of any type

    NNootteeText within comments and processing instructions is not captured within text nodes.

    AAttttrriibbuuttee NNooddeeThe attribute node has the following qualities:

    Single attribute node attached to an element node for each attribute specified in the starttag of that element

    Always attached to element nodes

    Has a name that is the name of the attribute

    Has a value that is the value of the attribute

    CCoommmmeenntt NNooddeeThe comment node has the following qualities:

    Single unnamed node created from a single comment

    Child of its parent node

    Never has any children nodes

    Has a value that is the content of the comment not including the opening and closingmarkup

    PPrroocceessssiinngg IInnssttrruuccttiioonn NNooddeeThe processing instruction node has the following qualities:

    Single named node created from a single processing instruction

    Child of its parent node

  • 20 XML Basics and Authoring

    Never has any children nodes

    Has a value that is the content of the processing instruction following the whitespace afterthe name but not including the opening and closing markup

    NNaammeessppaaccee NNooddeeThe namespace node has the following qualities:

    Provides the definition of the URI to use in place of the namespace prefix

    Always attached to element nodes

    Never has any child nodes

    NNaavviiggaattiinngg tthhee XXPPaatthh NNooddee TTrreeeeThe following 13 axis specifiers allow you to move with in the XPath tree:

    NNootteeThe double colon "::" immediately follows the use of an axis name.

    1. ancestor:: The parent and its ancestors (the chain of parents up to and including theroot) in reverse document order

    2. ancestor-or-self:: The current node and its ancestors in reverse document order

    3. attribute:: or (@) Attached attribute nodes in implementation-defined order

    4. child:: or (nothing) Immediate child nodes in document order

    5. descendant:: All descendent nodes (children and their children) in document order

    6. descendant-or-self:: The current node and its descendent nodes in documentorder

    7. following:: All nodes after the end of the current node in document order

    8. following-sibling:: All following siblings of the current node in document order

    9. namespace:: Attached namespace nodes in implementation-defined order

    10. parent:: or (..) The parent node (or the attaching node for attached attribute andnamespace nodes)

    11. preceding:: All nodes wholly contained before the start of the current node in reversedocument order

    NNootteeparent is excluded since it has its own axis specifier.

    12. preceding-sibling:: All preceding nodes that are siblings of the current node inreverse document order

    13. self:: The current node

    TechPubs Global, Inc.

  • XPath 21

    AAbbbbrreevviiaatteeddAAbbssoolluutteeLLooccaattiioonnPPaatthhAAbbbbrreevviiaatteeddAAbbssoolluutteeLLooccaattiioonnPPaatthh is an expression used to select all nodes in thedocument that satisfy some condition.

    SSyynnttaaxx

    //

    UUssaaggee

    The initial // indicates that the selection path starts at the document root. The path after the// indicates how the relative location then proceeds.

    EExxaammpplleess

    ////ffiigguurree

    selects all figure elements in the document

    ////cchhaapptteerr//ttiittllee

    selects all the title elements that have a chapter element as their parent

    AAbbbbrreevviiaatteeddRReellaattiivveeLLooccaattiioonnPPaatthhAAbbbbrreevviiaatteeddRReellaattiivveeLLooccaattiioonnPPaatthh is a shorthand way of requesting all the descendants ofa node rather than just the immediate children.

    EExxaammpplleess

    cchhaapptteerr////ffoooottnnoottee

    selects all footnote elements that are descendants of a chapter element that itself is a child ofthe context node

    UUssiinngg PPrreeddiiccaatteessPPrreeddiiccaatteess are used to qualify an expression (for example, filter nodes). They are specifiableon any node set and appear in square brackets after the node test.

    version[3]orversion[last()];

    Predicates may be:

    A numeric value

  • 22 XML Basics and Authoring

    version[3]

    Node set expression value

    spec[@released]

    Other expression value

    answer[count(guess)=5]

    XXPPaatthh FFuunnccttiioonnssThe following standard functions are included in XPath and XSLT for use in expressions:

    llaasstt(())Returns the value of the context size. When processing a list of nodes, if the nodes arenumbered from one, last returns the last number.

    ppoossiittiioonn(())Returns the value of the context position

    nnaammee(())Returns the name of a node. In most cases, this is the name of the node as written in theoriginal XML source document.

    ccoonnccaatt(())Takes two or more arguments. Each of the arguments is converted to a string, and theresulting strings are joined together end-to-end and returned as the result.

    concat(month,' ',day,' ',year)

    ccoouunntt(())Takes a node set as its parameter and returns the number of nodes present in the node set

    nnoott(())Returns the negation of its argument. If the argument is true, it returns false; if the argumentis false, it returns true.

    RReeaaddiinngg XXPPaatthh EExxpprreessssiioonnssThe following examples show how you would interpret XPath expressions:

    ppaarraamatches all para children in the current context

    ppaarraa//eemmpphhaassiissmatches all emphasis elements that have a parent of para

    TechPubs Global, Inc.

  • XPath 23

    ppaarraa////eemmpphhaassiissmatches all emphasis elements that have an ancestor of para

    ////ttiittlleematches all title elements anywhere in the document

    ..////ttiittlleematches all title elements that are descendants of the current context

    iitteemm[[11]]matches the first item

    iitteemm[[ppoossiittiioonn(())==llaasstt(())]]matches the last item (in a given list)

    ffiigguurree[[ttiittllee]]matches figure elements that have title children

    ttooppiicc[[@@lleevveell==''bbaassiicc'']]matches topic elements with level attributes whose value is basic

    aauutthhoorr[[ffiirrssttnnaammee==""PPaauull""]]matches author elements that have firstname children with the content Paul

    aauutthhoorr//ffiirrssttnnaammee[[..==""PPaauull""]]matches firstname elements (1) that are children of author elements and (2) whose content isPaul

    lliisstt//iitteemm[[ppaarraa]]matches list items that contain at least one para element

    wwaarrnniinngg[[@@ttyyppee==''sseerriioouuss'']]matches warning elements with a type attribute whose value is serious

  • 33TTeecchhSSuuiittee

    TechSuite Oveview......................................................................................................................26TechSuite System Structure .........................................................................................................26TechSuite System Components....................................................................................................28Manual Lifecycle .........................................................................................................................30

    XML Basics and Authoring 25

  • 26 XML Basics and Authoring

    TTeecchhSSuuiittee OOvveevviieewwTechPubs TechSuite is a system to create, edit, manage, publish and view manuals for theAirlines industry. These products use XML-oriented technology and supports industrystandards.

    TechSuite augments Arbortexts line of XML authoring products. For the sake of clarity,products are referred to by TechSuite nomenclature. The following table explains themapping between TechSuite and Arbortext products.

    TTeecchhSSuuiittee aanndd AArrbboorrtteexxtt AApppplliiccaattiioonnss

    TTeecchhSSuuiittee AArrbboorrtteexxttTechAuthor Arbortext Editor

    TechRevManager Windchill

    TechPublisher none

    TechView none

    TechView Offline none

    TTeecchhSSuuiittee SSyysstteemm SSttrruuccttuurreeTechSuite is composed of multiple components. Documents and manuals flow through theproducts.

    TechPubs Global, Inc.

  • TechSuite 27

    TTeecchhPPuubbss GGlloobbaall TTeecchhSSuuiittee

    TTeecchhAAuutthhoorr is the editor used to write and edit the manuals and individual XML files.TechAuthor interacts with TechRevManager to check the files into and out of the repositoryas they are drafted and updated. See Using TechAuthor on page 35.

    TTeecchhRReevv MMaannaaggeerr is the central content storage repository for all versions of manuals andgraphics. See Using TechRevManager on page .

    The manual is burst into chunks and saved into the content repository. Each of the chunksis an independent document (object) within the content repository. When a document ischecked out from TechAuthor and checked back in, the version of the document isincremented. The content respository stores all of the checked-in versions generated duringthe authoring process.

    TTeecchhPPuubblliisshheerr is the engine that publishes your manuals and pushes them to the librariesand servers on which you want them hosted. See Using TechPublisher on page .

  • 28 XML Basics and Authoring

    The iinntteerrnnaall tteecchhnniiccaall lliibbrraarryy stores and organizes all draft revisions of a manual duringdevelopment. When a technical writer finishes changes to the manual for a specific revision,the manual is released from content repository into the internal technical library. All of therevision history of the manuals appear in the internal library.

    The internal technical library is used by technical writers, reviewers, approvers, andadministrators. They use the internal technical library content to preview, review, and approvemanuals from TechView or TechEFB.

    An eexxtteerrnnaall tteecchhnniiccaall lliibbrraarryy is used to store the current effective revision of a manual.This is often used as a release library where only the current released information isprovided to content consumers.

    The external technical library is used by pilots, flight operations, and maintenance personnel.

    The manuals in the external technical library are uploaded from the internal technical libraryby a library administrator.

    TTeecchhVViieeww is the viewing engine that renders the contents of either the internal or externaltechnical library. See Using TechView on page .

    TTeecchhSSuuiittee SSyysstteemm CCoommppoonneennttssTechSuite includes the following applications:

    TTeecchhSSuuiittee AApppplliiccaattiioonnss

    AApppplliiccaattiioonnss//FFuunnccttiioonn DDeessccrriippttiioonn UUsseerrss

    TTeecchhAAuutthhoorr (requiresArbortext Editor)

    Authoring environment forall technical writers to makechanges to manuals;installed on each technicalwriters computer

    Technical writer

    TTeecchhRReevvMMaannaaggeerr (requiresArbortext Content Manager)

    Central storage repositoryfor all document content andgraphics; installed on aserver and accessed from aweb browser

    Technical writer,administrator, manual owner,subject matter expert,approver

    TTeecchhPPuubblliisshheerr (requiresArbortext Publish Engine)

    Application to publishmanuals to various outputtypes; installed on a serverand accessed from a webbrowser

    Technical writer,administrator

    TTeecchhVViieeww Application for viewing Technical writer, end user

    TechPubs Global, Inc.

  • TechSuite 29

    TTeecchhSSuuiittee AApppplliiccaattiioonnss ((ccoonnttiinnuueedd))

    AApppplliiccaattiioonnss//FFuunnccttiioonn DDeessccrriippttiioonn UUsseerrss

    published manuals on laptopor desktop; installed on aserver and accessed from aweb browser

    NNootteeYou can run multipleinstances of TechView.Often an internal andexternal TechView areinstalled.

    TTeecchhEEFFBB Application for viewingpublished manuals on amobile device; installed on aserver and accessed from amobile device such as aniPad

    Technical writer, end user

    TTeecchhCCoommppllyy Application for verifyingthat the manual content is incompliance with regulatoryrequirements; optionalmodule in TechAuthor,TechPublisher, andTechView

    Technical writer,administrator

    TechSuite requires the following environment:

    TTeecchhSSuuiittee 44..44 EEnnvviirroonnmmeenntt

    PPrrooggrraamm VVeerrssiioonn//CCoommmmeennttss

    Windows XP and 7; client OS

    2008 R2; server OS

    Arbortext Editor 6.0 M080

    32-bit version for Windows XP

    64-bit version for Windows 7

    Arbortext Publishing Engine (PE) 6.0 M080

    64-bit version

  • 30 XML Basics and Authoring

    TTeecchhSSuuiittee 44..44 EEnnvviirroonnmmeenntt ((ccoonnttiinnuueedd))

    PPrrooggrraamm VVeerrssiioonn//CCoommmmeennttss

    Arbortext Content Manager(ACM)

    10.0 M040

    Supports Oracle 11g and SQL Server 2008 database

    JDK 6

    32-bit version for Windows XP

    64-bit version for Windows 7

    Tomcat 6.0.33

    Included in the PE package and can be run on a 64-bitOS

    Used by TechPublisher, TechView, and TechEFB

    MMaannuuaall LLiiffeeccyycclleeThe following sections walkthrough the revision lifecycles for a manual.

    RReevviissiioonn 00 oorr IInniittiiaallTo run the lifecycle for the initial (0) revision:

    1. Create or convert manual to XML. Content can be converted from Microsoft Word, Fra-meMaker, or another existing source.

    2. Using TechAuthor, import the manual into TechRevManager. See Importing a Manual in-to TechRevManager on page .

    3. Prepare the manual for release by doing the following:

    a. Check the full manual out from TechRevManager to TechAuthor.

    b. In TechAuthor, from the menu bar, select RRuunn NNeeww RReevviissiioonn RReeccoorrdd.

    c. In cases where you want to update all revision dates on elements which haverevdate and revno attributes, from the menu bar, select RReevviissiioonn CClleeaarr CChhaannggeeIInnffoorrmmaattiioonn. See Clearing Change Information on page 100.

    d. When managing page-based manuals, see Generating a List of Effective Pages on

    TechPubs Global, Inc.

  • TechSuite 31

    page 104. When managing section-based manuals, see Generating a List of EffectiveSections on page 105 and Generating Section Revision Highlights on page 106.

    NNootteeIf you do not want to store the LEP, LoES, and Revision Highlights in TechRevManager,skip the previous steps and run generate LEP, LoES, and Generate Revision Highlightsagainst the released manual locally in TechAuthor after the document release.

    4. From TechAuthor, check the manual into TechRevManager.

    5. Release and publish the document by doing the following:

    a. Release the document from TechRevManager to TechPublisher.

    NNootteeIf you want to generate the LEP, LoES, or Revision Highlights during this step, rundocument release in TechAuthor to the local disk. Then run generate LEP, RevisionHighlights, or LoES. Once completed, upload the manual to TechPublisher forpublishing.

    b. In TechPublisher, publish the manual. See Publishing from TechPublisher on page .

    NNootteeIf there is a content problem, in TechRevManager, make changes to the copy of themanual not released. Then rerelease and publish the manual. Any changes made to thereleased copy of the manual do not appear in subsequent releases.

    6. In TechRevManager, create a baseline. See Creating a Baseline on page .

    RReevviissiioonn 11 ttoo NNTo run the lifecycle from revision 1 to N:

    1. Prepare the manual by doing the following:

    a. In TechRevManager, in the current folder, revise the manual.A new version of all document objects are created, and the lifecycle state is set to InWork.

    b. In TechAuthor, clean your workspace1, or create a new one.

    1. This function cleans out any previous revision of the document (object)s from the workspace.

  • 32 XML Basics and Authoring

    c. Check the full manual out from TechRevManager to TechAuthor.

    NNootteeIf you want to clear out all change information from the manual and add a newrevision date and number, clear the change information in TechAuthor. See ClearingChange Information on page 100.

    2. Make changes to the manual by doing the following:

    a. In TechAuthor, with Change Tracking enabled, make changes to the content.

    b. Go through the accept/reject change process. See Managing Changes on page 78.Change information is generated.

    c. Update the section attribute. See Updating Section Attributes on page 98.

    NNootteeAt this stage, in TechAuthor, run Check Completeness to ensure the document objectis still compliant to the DTD or schema.

    3. From TechAuthor, check the manual into TechRevManager.

    NNootteeThe change, review, and approve process is typically triggered by the change requestworkflow process.

    4. Prepare the manual for release by doing the following:

    a. Check the full manual out from TechRevManager to TechAuthor.

    b. In TechAuthor, from the menu bar, select RRuunn NNeeww RReevviissiioonn RReeccoorrdd.

    c. In cases where you want to update all revision dates on elements which haverevdate and revno attributes, from the menu bar, select RReevviissiioonn CClleeaarr CChhaannggeeIInnffoorrmmaattiioonn. See Clearing Change Information on page 100.

    d. When managing page-based manuals, see Generating a List of Effective Pages onpage 104. When managing section-based manuals, see Generating a List of EffectiveSections on page 105 and Generating Section Revision Highlights on page 106.

    NNootteeIf you do not want to store the LEP, LoES, and Revision Highlights in TechRevManager,skip the previous steps and run generate LEP, LoES, and Generate Revision Highlightsagainst the released manual locally in TechAuthor after the document release.

    TechPubs Global, Inc.

  • TechSuite 33

    5. Release and publish the document by doing the following:

    a. Release the document from TechRevManager to TechPublisher.

    NNootteeIf you want to generate the LEP, LoES, or Revision Highlights during this step, rundocument release in TechAuthor to the local disk. Then run generate LEP, RevisionHighlights, or LoES. Once completed, upload the manual to TechPublisher forpublishing.

    b. In TechPublisher, publish the manual. See Publishing from TechPublisher on page .

    NNootteeIf there is a content problem, in TechRevManager, make changes to the copy of themanual not released. Then rerelease and publish the manual. Any changes made to thereleased copy of the manual do not appear in subsequent releases.

    6. In TechRevManager, create a baseline. See Creating a Baseline on page .

  • 44UUssiinngg TTeecchhAAuutthhoorr

    TechAuthor Overview...................................................................................................................36Authoring Basics .........................................................................................................................36Creating a New Document ...........................................................................................................41Inserting Markup .........................................................................................................................45Working with Attributes ................................................................................................................53Managing Content .......................................................................................................................55Managing Airline Data..................................................................................................................72Managing Changes .....................................................................................................................78Revision Management .................................................................................................................90

    XML Basics and Authoring 35

  • 36 XML Basics and Authoring

    TTeecchhAAuutthhoorr OOvveerrvviieewwTechAuthor, the editing and authoring component of TechSuite, is the primary tool used forediting and authoring structured content and manipulating the associated metadata, such aschange revisions, compliance, and effectivity.

    TechAuthor connects with content repositories to access versioned XML, images, anddocuments. TechAuthor is used to manage and insert compliance elements, revision elements,effectivity, and phase of flight elements into content.

    In addition to composing the manual itself, TechAuthor can also prepare front mattersummaries, such as:

    Revision Record

    List of Effective Sections

    List of Effective Pages

    Section Revision Highlights

    Page Revision Highlights

    AAuutthhoorriinngg BBaassiiccssThe following sections summarize some basic authoring topics for TechAuthor.

    EEnnaabblliinngg FFuullll MMeennuussTo reveal all menus in TechAuthor:

    1. From the menu bar, select TToooollss PPrreeffeerreenncceess.The Preferences dialog box opens.

    2. Under Category, select WWiinnddooww.The window options appear.

    WWiinnddooww OOppttiioonnss

    TechPubs Global, Inc.

  • Using TechAuthor 37

    3. Under Show, select FFuullll MMeennuuss.

    NNootteeWhen not selected, the short menus list only displays the most frequently-used menucommands.

    4. Click OOKK.The settings are applied, and all menus and menu items appear.

    SShhoowwiinngg tthhee CCoommmmaanndd LLiinneeTo use command shortcuts in TechAuthor, you must enable the command line in theinterface.

    1. From the menu bar, select TToooollss PPrreeffeerreenncceess.The Preferences dialog box appears.

    2. Under Category, select WWiinnddooww.The window options appear on the right.

    3. Under Show, select the CCoommmmaanndd LLiinnee check box.

    4. Click OOKK.The Command Line appears at the bottom of the TechAuthor window.

    KKeeyybbooaarrdd SShhoorrttccuuttssThe following tables list keyboard shortcuts for common tasks:

    EEddiittiinngg FFuunnccttiioonnss

    KKeeyyssttrrookkee FFuunnccttiioonnCTRL+D Modifies attributes

    ALT+SHIFT+A Retrieves information about the currentcharacter

    CTRL+SHIFT+X Deletes markup

    NNootteeThis function deletes backwards and contin-ues to do so until deletion would make themarkup out of context.

    ALT+SHIFT+Up or Down Arrow Scrolls five lines up or down

    SHIFT+RIGHT-CLICK Collapses expand current tag

    CTRL+0 Expands all

  • 38 XML Basics and Authoring

    EEddiittiinngg FFuunnccttiioonnss ((ccoonnttiinnuueedd))

    KKeeyyssttrrookkee FFuunnccttiioonnHYPHEN Cycles through hyphens, en-dashes, and em-

    dashes

    CTRL+A Selects entire document

    CTRL+C Copies highlighted region to buffer (replac-ing buffer contents)

    CTRL+X Cuts highlighted region to buffer (replacingbuffer contents)

    CTRL+E Selects element content

    CTRL+V Pastes buffer contents

    CTRL+Y Performs the reversed action again or re-peats the last command

    CTRL+Z Undoes the last operation

    SHIFT+F3 Cycles through cases for the selected con-tent. For example, lowercase, Title Case,UPPERCASE, and so on.

    CTRL+DELETE Deletes the next word

    CTRL+BACKSPACE Deletes the previous word

    ALT+DELETE Deletes to end of line

    CTRL+CLICK Selects the sentence under the pointer

    ALT+CLICK Collapses or expands element content

    TTaabbllee EEddiittiinngg

    KKeeyyssttrrookkee FFuunnccttiioonnF9 Inserts a row above

    SHIFT+F9 Inserts a row below

    CTRL+F9 Inserts a column to the left

    CTRL+SHIFT+F9 Insert a column to the right

    F11 Deletes the row with the cursor or the se-lected row(s)

    CTRL+F11 Deletes the column with the cursor or the se-lected column(s)

    TechPubs Global, Inc.

  • Using TechAuthor 39

    TTaabbllee EEddiittiinngg ((ccoonnttiinnuueedd))

    KKeeyyssttrrookkee FFuunnccttiioonnALT+F9 Selects the cell with the cursor

    ALT+SHIFT+F9 Selects the row with the cursor

    ALT+CTRL+F9 Selects the column with the cursor

    ALT+5 Selects the whole table

    F11 Spans the selected cells

    ALT+SHIFT+F11 Unspans the cells if previously merged

    FFiinnddiinngg TTeexxtt aanndd TTaaggss

    KKeeyyssttrrookkee FFuunnccttiioonnCTRL+F Opens the Find/Replace dialog box

    CTRL+SHIFT+F Finds the next instance

    ALT+SHIFT+F Finds the selection forward

    ALT+Left Arrow Finds element start tag

    ALT+Right Arrow Finds element end tag

    CTRL+Shift+(level #) In the Document Map view, collapses to thespecified level.

    NNootteeThis change is undone when a file ischecked in or out of the repository.

    MMaarrkkuupp

    KKeeyyssttrrookkee FFuunnccttiioonnCTRL+M Opens the Insert Markup toolbar list

    CTRL+SHIFT+M Opens the Insert Markup dialog box

    CTRL+SHIFT+X Deletes the selected markup or markup withthe cursor

    CTRL+D Opens the Modify Attributes dialog box

    ENTER Opens the Quick Tags menu

    NNootteeFor markup shortcuts, the cursor must be in between or to the right of the tag.

  • 40 XML Basics and Authoring

    AAcccceenntt MMaarrkkss aanndd SSyymmbboollss

    KKeeyyssttrrookkee SSyymmbbooll oorr AAcccceenntt EExxaammppllee

    ALT+' acute

    ALT+ bar under

    ALT+[ breve

    ALT+< caron

    ALT+ cedilla

    ALT+^ circumflex

    ALT+. dot over

    ALT+, dot under

    ALT+` grave

    ALT+# double acute

    ALT+- macron

    ALT+@ ring

    ALT+~ tilde

    ALT+ umlaut

    CCoommmmaanndd SShhoorrttccuuttssThe following table lists command shortcuts for common tasks:

    CCoommmmaanndd AAccttiioonnedit current untagged Switches the view to edit in XML code

    edit current xml Switches the view to edit in Arbortexttagging

    doc_flatten Flattens all objects in the document

    TechPubs Global, Inc.

  • Using TechAuthor 41

    CCrreeaattiinngg aa NNeeww DDooccuummeennttThe New Document dialog box allows you to launch a new document in any of the doctypesdefined in your environment.

    NNeeww DDooccuummeenntt DDiiaalloogg BBooxx

    The Category pane on the left displays the document type categories; the Type pane on theright displays the associated template or samples available for that document type. Theoptions on the bottom of the dialog box determine whether you launch a template or sampleversion of that type.

    CCoonnffiigguurriinngg NNeeww OOppttiioonnssTo manage the template and sample files available for selection on the New Document dialogbox:

    1. From the menu bar, select TToooollss PPrreeffeerreenncceess.

    2. Click AAddvvaanncceedd.

    3. Select the nneewwlliisstt preference.

  • 42 XML Basics and Authoring

    4. Click EEddiitt.The New List Configuration dialog box opens.

    NNeeww LLiisstt CCoonnffiigguurraattiioonn DDiiaalloogg BBooxx

    5. Click AAdddd.The Select DTD/Schema dialog box opens.

    6. Navigate to and select the DTD or schema file.

    7. Click OOppeenn.The DTD or schema is added to the New dialog box.

    8. From the Category or Type list, select an existing entry.

    9. Click EEddiitt.The Edit Preference dialog box opens.

    10. Click BBrroowwssee, and navigate to and select a new file.

    11. Click OOKK.The preference is updated.

    12. Click OOKK.The Edit Preferences dialog box closes.

    13. Click CClloossee.The Advanced Preferences dialog box closes.

    14. Click OOKK.The Preferences dialog box closes.

    TechPubs Global, Inc.

  • Using TechAuthor 43

    CCrreeaattiinngg aa NNeeww TTeemmppllaatteeTo draft a new template:

    NNootteeCurrently, this function is special for only airbusflightops manuals.

    1. From the menu bar, select FFiillee NNeeww.The New Document dialog box opens.

    2. From the Category list, select tteecchhuusseerr.The Type list populates with applicable document types.

    TTyyppee LLiisstt

    3. From the Types list, select AAiirrbbuuss FFlliigghhtt OOppss.

    4. At the bottom of the dialog box, select TTeemmppllaattee.

    5. Click OOKK.The document template launches in Arbortext.

    CCrreeaattiinngg aa NNeeww SSaammpplleeTo draft a new sample:

  • 44 XML Basics and Authoring

    NNootteeCurrently, this function is only available for airbusflightops manuals.

    1. From the menu bar, select FFiillee NNeeww.The New Document dialog box opens.

    2. From the Category list, select tteecchhuusseerr.The Type list populates with applicable document types.

    TTyyppee LLiisstt

    3. From the Types list, select AAiirrbbuuss FFlliigghhtt OOppss.

    TechPubs Global, Inc.

  • Using TechAuthor 45

    4. At the bottom of the dialog box, select SSaammppllee.

    5. Click OOKK.The document sample launches in Arbortext.

    SSaammppllee DDooccuummeenntt

    IInnsseerrttiinngg MMaarrkkuuppThere are several ways to insert markup in your document:

    Inserting Markup Using the Toolbar on page 46

    Inserting Markup Using the Dialog Box on page 47

    Inserting Markup Using Quick Tags on page 49

  • 46 XML Basics and Authoring

    IInnsseerrttiinngg MMaarrkkuupp UUssiinngg tthhee TToooollbbaarrTo add markup to your document with the toolbar button:

    1. In the document, place your cursor at the target location.

    2. On the toolbar, click IInnsseerrtt MMaarrkkuupp.The Insert Element list appears, showing all elements valid for your cursor location. If nochoices appear in the list, markup tags are not valid for insertion in the current context.

    IInnsseerrtt EElleemmeenntt LLiisstt

    NNootteeYou can also open this list by pressing CTRL+M.

    3. From the list, select an element.The element appears at your cursor location.

    TechPubs Global, Inc.

  • Using TechAuthor 47

    IInnsseerrttiinngg MMaarrkkuupp UUssiinngg tthhee DDiiaalloogg BBooxxTo add markup to your document with the dialog box:

    1. In the document, place your cursor at the target location.

    2. From the menu bar, select IInnsseerrtt EElleemmeenntt.The Insert Element dialog box appears, showing all elements valid for your cursorlocation. If no choices appear in the list, markup tags are not valid for insertion in thecurrent context.

    IInnsseerrtt EElleemmeenntt DDiiaalloogg BBooxx

    3. From the list, select an element.

    4. Click IInnsseerrtt.The element appears at your cursor location.

    NNootteeThe dialog box can remain open while you continue to insert markup in more than oneplace.

    5. When completed, click CClloossee.

    UUssiinngg QQuuiicckk TTaaggssQQuuiicckk TTaaggss allow you to insert elements into your document without having to access usingthe toolbar or dialog box.

  • 48 XML Basics and Authoring

    Quick Tags appear in a popup list of elements at the location of your cursor when you pressENTER. The contents of the Quick Tags is context-sensitive, based on the position of yourcursor in your document.

    QQuuiicckk TTaaggss LLiissttssWhen there is no horizontal dividing line in the Quick Tags list, the list contains only childelements of the tag for the cursor location. For example, your cursor location is not at an endtag when you press ENTER. The list of elements is the same list you would get when usingthe toolbar button or dialog box to insert markup.

    UUnnddiivviiddeedd QQuuiicckk TTaaggss LLiisstt

    When the Quick Tags popup is divided by a horizontal line, the section below the linecontains a list of the child elements that are valid to insert within the element in which yourcursor is located.

    The section above the line are other valid elements that you might want to insert after thecurrent element. This list contains parent elements that correspond to the series ofuninterrupted end tags in the document map at this location.

    For example, the following figure shows a portion of the document map with the cursor at theend of content in a para element. The element is inside a listitem element,which is inside an itemizedlist element.

    EExxaammppllee CCoonntteexxtt

    The corresponding Quick Tags list incorporates all these parent elements above the horizontalline.

    TechPubs Global, Inc.

  • Using TechAuthor 49

    DDiivviiddeedd QQuuiicckk TTaaggss LLiisstt

    Notice there are four choices above the horizontal line.

    para split inserts another para element right after the para where the cursor islocated. For example, if you are creating a bulleted list, this choice adds a secondparagraph in the list item with which you are currently working.

    listitem after para, listitem inserts another listitem element inside theitemizedlist element. This choice adds another bullet item to your bulleted list.

    itemizedlist after para, listitem, itemizedlist inserts anotheritemizedlist element after the existing one. This choice adds a second bulleted listto follow the list you already made.

    para after para, listitem, itemizedlist, para inserts another paraelement after the one at the bottom of the hierarchy shown. This means you havecompleted the bulleted list(s), and you want to add a paragraph after the paragraph thatcontains those lists to continue on with your document.

    Below the horizontal line is a list of all the elements that are valid within the para elementwhere the cursor is located. If this list is long, you are able to scroll through it to make yourselection.

    IInnsseerrttiinngg MMaarrkkuupp UUssiinngg QQuuiicckk TTaaggssTo add markup to your document with Quick Tags:

    1. In the document, place your cursor at the target location.

    2. Press ENTER.The Quick Tags list appears.

    3. Select an element from the list.

    NNootteeYou can use the keyboard keys to navigate and select in the list.

  • 50 XML Basics and Authoring

    If tag display is on, the tag appears in your document. If tag display is off, the tag promptappears (a gray box with the name of the element inside it).

    4. Press ENTER again, and make another selection from the Quick Tags list.

    MMaannaaggiinngg TTaaggssTechAuthor provides several features for managing the tags (elements) within yourdocument.

    CChhaannggiinngg aann EElleemmeennttChanging an element (tag) is a subset of changing markup. This feature allows you tochanges the type of markup located to the left of the cursor to another tag that is permitted atthat location.

    To change the current element:

    1. Place your cursor within the element, or select the element.

    2. Do one of the following:

    From the menu bar, select EEddiitt CChhaannggee MMaarrkkuupp.

    On the toolbar, click CChhaannggee MMaarrkkuupp.

    The Change Markup dialog box appears with the element name in the title bar.

    CChhaannggee MMaarrkkuupp DDiiaalloogg BBooxx

    3. (Optional) Use the MMooddee drop-down menu to set the appropriate markup type.

    TechPubs Global, Inc.

  • Using TechAuthor 51

    4. From the list, select the new element type.

    5. Click OOKK.The element is changed in the document.

    SSpplliittttiinngg aa TTaaggAs you create your document, you might need to separate the contents of a tag. To do so, youneed to split the tags.

    To split a tag into two tags:

    1. In your document, place the cursor where you want to separate the contents.

    2. Do one of the following:

    From the menu bar, select EEddiitt SSpplliitt [[ttaagg]] eelleemmeenntt, where [tag] is the name of the tagcontaining the cursor that will be affected by the split operation.

    Press ENTER, and from the Quick Tags list, select [[ttaagg]] sspplliitt.

    Press CTRL+J.

    The tag separates into two tags of the same type at the cursor point.

    JJooiinniinngg TTaaggssAs you create your document, you might need to unite the contents of two adjacent tags withthe same structure, such as two paragraphs or two sections. To do so, you need to join thetags.

    To join two adjacent tags of the same type:

    1. In your document, place the cursor between the two tags of the same type to join.

    NNootteeYou can also select the two or more adjacent tags. Your selection should completelycontain the tags you want to join, and the tags must be of the same type.

    2. Do one of the following:

    From the menu bar, select EEddiitt JJooiinn [[ttaagg]] elements, where [tag] is the name of theselected tags that will be affected by the join operation.

    Press CTRL+SHIFT+J.

    The indicated tags merge into one.

    CCrreeaattiinngg aa TTaagg TTeemmppllaatteeThe tag template features allows you to create a shortcut to consistent and frequently usedsets of tags or text. Tag templates can be used to create sets of instructions or a partiallycompleted list that you want to use repeatedly.

  • 52 XML Basics and Authoring

    The environment variable APTTAGTPLDIR specifies the path for the tag template directory.

    To create a tag template:

    1. In your document, create the tags you want to template.

    2. Select the tags.

    3. From the menu bar, select TToooollss TTaagg TTeemmppllaatteess.The Tag Templates dialog box opens.

    TTaagg TTeemmppllaatteess DDiiaalloogg BBooxx

    NNootteeIf you wanted to select an existing tag template, under Templates, select the template, andclick Insert.

    4. Click NNeeww.The New Tag Template dialog box opens with your tag selection displayed.

    5. In the NNaammee field, type a name for the template.

    6. In the SSttoorree tteemmppllaattee iinn field, type or select the folder in which to save the template.

    NNootteeYou can save these templates to a shared location to allow multiple users to access them.

    7. Click OOKK.The template is created and appears in the Templates list on the Tag Templates dialogbox.

    8. To insert the tag template, under Templates, select the new template.

    TechPubs Global, Inc.

  • Using TechAuthor 53

    9. Click IInnsseerrtt.The tag template appears in your document. The Tag Templates dialog box remains openfor you to insert multiple templates.

    10. When completed, click CClloossee.

    WWoorrkkiinngg wwiitthh AAttttrriibbuutteessThe following sections describe managing attributes.

    MMooddiiffyyiinngg AAttttrriibbuutteessThe Modify Attributes dialog box lists the attributes associated with the current tag, asdefined in the DTD or schema.

    To change the attributes of an element:

    1. In the document, place your cursor within the target element.

    2. Do one of the following:

  • 54 XML Basics and Authoring

    On the toolbar, click MMooddiiffyy AAttttrriibbuutteess.

    Press CTRL+D.

    The Modify Attributes dialog box appears with a cursor in the first required attribute.

    MMooddiiffyy AAttttrriibbuutteess DDiiaalloogg BBooxx

    3. Define or update the attributes as needed.

    4. Click OOKK.The attributes are applied to the element. If you have not defined all required attributes, awarning message appears.

    RReeppllaacciinngg AAttttrriibbuutteessThe Replace Attributes dialog box allows you to search contextually for elements and theirattributes. You can then replace specific attribute values or any attribute value with a newvalue or no value.

    NNootteeThe Replace Attribute dialog box also works with profile attributes.

    TechPubs Global, Inc.

  • Using TechAuthor 55

    To change an attribute:

    1. From the menu bar, select FFiinndd RReeppllaaccee AAttttrriibbuuttee.The Replace Attribute dialog box appears.

    RReeppllaaccee AAttttrriibbuuttee DDiiaalloogg BBooxx

    2. Under Find, complete the following fields;

    a. From the AAttttrriibbuutteess drop-down menu, select or type the attribute value to update.

    b. In the VVaalluuee field, type the existing entry.

    c. (Optional) From the OOnn TTaaggss drop-down menu, select the tags on which the attributeappears.

    d. (Optional) From the WWiitthhiinn TTaaggss drop-down menu, select the tag which appears as aparent to the element within which the attribute appears.

    3. Under Replace With, in the VVaalluuee field, type the replacement entry.

    4. Under Value Search Options, select the search parameters

    5. Under Direction, select the way in which to search the document for the attribute.

    6. Click FFiinndd NNeexxtt.The search highlights the next appearance of the attribute in the document.

    7. To switch attribute values to the newly defined value, click RReeppllaaccee or RReeppllaaccee AAllll.

    8. When completed, click CClloossee or CCaanncceell.

    MMaannaaggiinngg CCoonntteennttIn XML, content is formatted when the stylesheet is applied during output. However, youdefine how your content appears in the output by the tags (elements) you use. For example,you can format your content into a table output by using the appropriate tags. TechAuthor hasseveral features to streamline this part of authoring.

  • 56 XML Basics and Authoring

    WWoorrkkiinngg wwiitthh TTaabblleessTechAuthor provides a set of tools for inserting, displaying, and editing tables.

    CCrreeaattiinngg aa TTaabblleeTo include a table in your document:

    1. In the document, place your cursor at a valid location for a table. For example, just insidea paragraph end tag.

    2. From the menu bar, select IInnsseerrtt TTaabbllee.The Insert Table dialog box appears.

    IInnsseerrtt TTaabbllee

    3. Specify the number of rows and columns.

    4. Click OOKK.The table appears in your document.

    NNootteeMany DTDs also include a table element. You can create a table using an element byinserting markup (see Inserting Markup on page 45) or using Quick Tags (see InsertingMarkup Using Quick Tags on page 49).

    TTaabbllee TToooollbbaarrThe table toolbar contains buttons that access table editing options and functions.

    TTaabbllee TToooollbbaarr BBuuttttoonnss

    BBuuttttoonn FFuunnccttiioonnInserts a new row below the cell containing the cursorF9

    Inserts a new row above the cell containing the cursorSHIFT+F9

    Inserts a new column to the right of the cell containing the cursor. Not appli-cable to custom tables.CTRL+F9

    TechPubs Global, Inc.

  • Using TechAuthor 57

    TTaabbllee TToooollbbaarr BBuuttttoonnss ((ccoonnttiinnuueedd))

    BBuuttttoonn FFuunnccttiioonnInserts a new column to the left of the cell containing the cursor. Not applica-ble to custom tables.

    CTRL+SHIFT+F9

    Deletes the row containing the cursorF11

    Deletes the column containing the cursor. Not applicable to custom tables.CTRL+F11

    Combines two or more selected cells. The contents of the cells are preservedand distributed across the newly spanned cell. Not applicable to customtables.ATL+F11

    Splits cells which have been spanned. Any content is placed in the upper leftmost cell. Not applicable to custom tables.

    ATL+SHIFT+F11

    Aligns cell content with the top border of the cell. Not applicable to customtables.

    Aligns cell content vertically to the center of the cell. Not applicable to cus-tom tables.

    Aligns cell content with the bottom border of the cell. Not applicable to cus-tom tables.

    Aligns cell content to the left margin of the cell. Not applicable to customtables.

    Aligns cell content horizontally to the center of the cell. Not applicable tocustom tables.

    Aligns cell content to the right margin of the cell. Not applicable to customtables.

    Distributes cell content horizontally to align with both the left and right mar-gins of the cell. Not applicable to custom tables.

    Cycles through the tag display options for table markup

    Changes the way selected borders are displayed in the document. Not appli-cable to custom tables.

  • 58 XML Basics and Authoring

    TTaabbllee TToooollbbaarr BBuuttttoonnss ((ccoonnttiinnuueedd))

    BBuuttttoonn FFuunnccttiioonnChanges the font characteristics for text in selected cells

    Inserts shading (a background color) at the cursor's location. Clicking thedown arrow displays a shading palette from which you can select a color.Not applicable to custom tables.

    To set the table toolbar to disappear when a table is not active, from the menu bar, selectTToooollss PPrreeffeerreenncceess. Under Category, select Window; then select the Table Toolbar OnlyWhen Table is Active check box.

    SSppeecciiffyyiinngg FFiixxeedd RRooww HHeeiigghhttTo limit the row(s) in your table to a set height:

    1. In your document, place your cursor within the table in a cell of the applicable row.

    2. Do one of the following:

    From the menu bar, select TTaabbllee TTaabbllee PPrrooppeerrttiieess.

    Right-click, and select TTaabbllee PPrrooppeerrttiieess.

    The Table Properties dialog box opens.

    3. Click the RRooww tab.The Row tab appears.

    4. Under Height, select FFiixxeedd.

    TechPubs Global, Inc.

  • Using TechAuthor 59

    5. In the field, type the value and unit of measurement for the height. For example, 2.5in.

    6. Click OOKK.The row height is fixed at the defined value. The height measurements appear in the ruleralong the left.

    RRooww HHeeiigghhtt

    NNootteeThe row height value appears in red if the content of the cell exceeds the designatedheight.

    MMooddiiffyyiinngg CCeellll BBoorrddeerrssTo adjust the cell borders that appear on your table:

    1. In your document, do one of the following:

    To affect the borders on the entire table, place your cursor within the table.

    To affect the borders of just a portion of the table, select the applicable rows and/orcells.

    2. Do one of the following:

  • 60 XML Basics and Authoring

    From the menu bar, select TTaabbllee MMooddiiffyy BBoorrddeerrss.

    On the toolbar, click MMooddiiffyy BBoorrddeerrss.

    Right-click, and select MMooddiiffyy BBoorrddeerrss.

    The Modify Borders dialog box opens.

    MMooddiiffyy BBoorrddeerrss

    3. Under Presets, select the applicable button.

    4. If you did not make a selection in the table, from the AAppppllyy TToo drop-down menu, select TTaa--bbllee or CCeellll.

    5. Click OOKK.The specified borders are applied to the table.

    SSppaannnniinngg TTaabbllee CCeellllssTo combine one or more cells in a table:

    1. In the table, select the cells to combine. You may select several cells vertically, horizon-tally, or a combination of both.

    2. Do one of the following:

    TechPubs Global, Inc.

  • Using TechAuthor 61

    From the menu bar, select TTaabbllee SSppaann CCeellllss.

    On the toolbar, click SSppaann CCeellllss.

    Press ALT+F11.

    The cells merge, and the contents of the spanned cells are preserved and distributed acrossthe newly combined cell.

    3. To separate spanned cells, selected the spanned cell.

    4. Do one of the following:

    From the menu bar, select TTaabbllee UUnnssppaann CCeellllss.

    On the toolbar, click UUnnssppaann CCeellllss.

    Press ALT+SHIFT+F11.

    The cells separate, and the combined contents appears in the upper left cell.

    CCoonnvveerrttiinngg RRoowwssFor tables that span page boundaries, header rows print at the top of each page, and footerrows print at the bottom of each page. Text in header rows is automatically converted to bold.

    To convert a body row to a header or footer row:

    1. In the table, select the row(s) to convert.

    2. From the menu bar, select TTaabbllee CCoonnvveerrtt ttoo HHeeaaddeerr RRooww or CCoonnvveerrtt ttoo FFooootteerr RRooww.If not already at the top of the table, the selected rows appear in the header/footer regionat the top of the table.

    NNootteeAccording to the OASIS Exchange and HTML table models, header rows must be at thetop of the table, and footer rows must occur directly after them. When you convert bodyrows to header or footer rows, they are moved to the top of the table and placed with theother header and footer rows.

    DDiissttrriibbuuttiinngg TTaabbllee CCoolluummnnss EEvveennllyyThe TTaabbllee DDiissttrriibbuuttee CCoolluummnnss EEvveennllyy option adds up the total width of the selected columns(or all columns in the table if there is no selection) and redistributes the width evenly to eachcolumn in the selection. You only need to select one (or more) cells from a column to includeit in the selection. The whole column does not have to be selected, and the rule for theselection is the same even if the selection is discontinuous.

  • 62 XML Basics and Authoring

    All affected columns end up with the exact same width, including units. If all affectedcolumns have the same unit, that unit is used, and the resulting dimension is the average of allthe initial widths. If the columns widths use different units, the unit used by the column withthe cursor is the resulting unit. The other units widths are first converted to the resulting unit;then the average is computed.

    NNootteeIf all columns in a table are being redistributed and all use proportional widths. In that case,all widths are just reset to 1.00*.

    WWoorrkkiinngg wwiitthh LLiissttssSimilar to tables, TechAuthor provides a set of tools for inserting and editing lists.

    LLiisstt TToooollbbaarrList authoring in TechAuthor attempts to mimic Microsoft Word behavior for lists wherepossible within the constraints of an XML document type.

    NNootteeThese buttons are enabled only if the current document type supports a numeric or bulletedlist block element.

    In the DCF file, the configuration of list and list items in the document type determines thebuttons on the list toolbar in TechAuthor.

    LLiisstt TToooollbbaarr BBuuttttoonnss

    TToooollbbaarr BBuuttttoonn TToooollttiipp DDeessccrriippttiioonn

    Numeric List Invokes the NumericList alias, which ismapped to the _list::numeric_listfunction

    Bulleted List Invokes the BulletedList alias, which ismapped to the _list::bulleted_listfunction

    TechPubs Global, Inc.

  • Using TechAuthor 63

    LLiisstt TToooollbbaarr BBuuttttoonnss ((ccoonnttiinnuueedd))

    TToooollbbaarr BBuuttttoonn TToooollttiipp DDeessccrriippttiioonn

    Promote Item Invokes the PromoteListItem alias,which attempts to promote one or more listitems.Enabled only if all of the following condi-tions are true:

    Caret is positioned within a list item in anested list block or a selection that con-sists of one or more items within anested list block.

    If no selection exists, the caret must bepositioned within the first block elementof a list item.

    If a selection exists, it must contain thefirst block element of a list item or existwithin the first block element of an item.

    Demote Item Invokes the DemoteListItem alias,which attempts to demote one or more listitems.Enabled only if all of the following condi-tions are true:

    Caret is positioned within a list item thatsucceeds another item or a selection ex-ists that consists of one or more itemsthat succeed another item.

    If no selection exists, the caret must bepositioned within the first block elementof a list item.

    If a selection exists, it must contain thefirst block element of a list item or existwithin the first block element of an item.

    LLiisstt AArrbboorrtteexxtt CCoommmmaanndd LLaanngguuaaggee FFuunnccttiioonnssThe following Arbortext Command Language (ACL) functions affect list functionality.

  • 64 XML Basics and Authoring

    NNeeww AACCLL FFuunnccttiioonnss

    FFuunnccttiioonn DDeessccrriippttiioonn

    __lliisstt::::ccaarreett__wwiitthhiinn__lliisstt(doc = current_doc())

    If the caret is currently positioned within a list block, thisfunction returns 1. Otherwise, it returns 0.

    __lliisstt::::sspplliitt__lliisstt(doc = cur-rent_doc())

    If the current caret position is not within a list block, thisfunction returns 0. Otherwise, this function attempts to splitthe list block into two blocks and returns -1. If the attemptshould fail for some reason, a message appears.

    __lliisstt::::sspplliitt__lliisstt__iitteemm(doc =current_doc())

    If the current caret position is not within a list block, thisfunction returns 0. Otherwise, this function attempts to splitthe current list block child within the list block into twoblocks and returns -1. If the attempt should fail for somereason, a message appears.

    __lliisstt::::jjooiinn__bbaacckkwwaarrdd(doc =current_doc())

    If the current caret position is not within a list block, thisfunction returns 0. Otherwise, if the caret is positioned with-in a list block child and a preceding list block child exists,this function attempts to join the two list block children. Ifno preceding list block child exists but another list blockprecedes this block, this function attempts to join the two listblocks. For either attempt, this function returns -1. If eitherattempt should fail for some reason, a message appears.

    __lliisstt::::jjooiinn__ffoorrwwaarrdd(doc =current_doc())

    If the current caret position is not within a list block, thisfunction returns 0. Otherwise, if the caret is positioned with-in a list block child and a succeeding list block child exists,this function attempts to join the two blocks. If no succeed-ing list block child exists but another list block succeeds thislist block, this function attempts to join the two blocks. Foreither attempt, this function returns -1. If either attemptshould fail for some reason, a message appears.

    __lliisstt::::ddeemmoottee(doc = cur-rent_doc())

    If the current caret position is not within a list block, thisfunction returns 0. Otherwise, this function attempts to de-mote the current list item and returns -1. If the attemptshould fail, a message appears.

    __lliisstt::::pprroommoottee(doc = cur-rent_doc())

    If the current caret position is not within a list block, thisfunction returns 0. Otherwise, this function attempts to pro-mote the current list item and returns -1. If the attemptshould fail, a message appears.

    TechPubs Global, Inc.

  • Using TechAuthor 65

    MMooddiiffiieedd AACCLL FFuunnccttiioonnss

    FFuunnccttiioonn DDeessccrriippttiioonn

    __lliisstt::::nnuummeerriicc__lliisstt(doc =current_doc())

    The result of this ACL function is the same, either create anew numeric list or convert an existing list to numeric listwithin the current document. If this function is invoked,based on the current document caret position or selection,one of the following numeric list operations can be at-tempted. See the associated sections for more information.

    Apply List Block Style

    Remove List Block Style

    Convert List Block Style

    Remove List Block Child Style

    Convert List Block Child style

    __lliisstt::::bbuulllleetteedd__lliisstt(doc =current_doc())

    The result of this ACL function is the same, either create anew bulleted list or convert an existing list to bulleted listwithin the current document. If this function is invoked,based on the current document caret position or selection,one of the following bulleted list operations can be at-tempted. See the associated sections for more information.

    Apply List Block Style

    Remove List Block Style

    Convert List Block Style

    Remove List Block Child Style

    Convert List Block Child style

    lliisstt__ttaagg(tagname[,doc = cur-rent_doc()])

    This function returns 1 (true) if the tag named tagname isdeclared as a list block in the DCF file for the documenttype associated with doc. If doc is omitted or 0, the currentdocument is used. In the DCF file, a tag may be declared asa list block in the ElementOptions section or in theLists section. This function returns 1 (true) if the tag isdeclared in either section.

  • 66 XML Basics and Authoring

    MMooddiiffiieedd AACCLL FFuunnccttiioonnss ((ccoonnttiinnuueedd))

    FFuunnccttiioonn DDeessccrriippttiioonn

    iitteemm__ttaagg(tagname[,doc =current_doc()])

    This function returns 1 (true) if the tag named tagname isdeclared as a list item in the DCF file for the document typeassociated with doc. If doc is omitted or 0, the current docu-ment is used. In the DCF file, a tag may be declared as a listitem in the ElementOptions section or in the Listssection. This function returns 1 (true) if the tag is declaredin either section.

    __rreettuurrnn::::nneexxtt__llooggiiccaall__rree--ttuurrnn(()__rreettuurrnn::::ddiissppllaayy__mmeennuu((mmeennuuiitteemm[[]], mmeennuummoovvee[[]], mmeennuuggrraayy[[]], nnaabboovvee)

    __rreettuurrnn::::mmoovvee__aanndd__iinnsseerrtt((ttaaggiinnsseerrtt, nnmmoovvee)

    These functions are called upon execution of the Quick-Tags alias.

    CCooppyyiinngg aanndd PPaassttiinnggFormerly, word processing or browser information copied to the Windows clipboard couldonly be pasted into TechAuthor as plain text. All implied structuresuch as titles, tables,graphics, footnotes, and index termswere lost in a stream of non-delineated PCDATA.

    TechAuthors standard copy/paste behavior has been enhanced when the source informationcomes from:

    Microsoft Word

    Adobe FrameMaker

    HTML browsers

    Plain text

    TechPubs Global, Inc.

  • Using TechAuthor 67

    Now, TechAuthor attempts to interpret the formatting and translate it into the proper tags. Ifunsuccessful or considered invalid at the insertion, the Invalid Paste Structure dialog boxappears.

    IInnvvaalliidd PPaassttee SSttrruuccttuurree DDiiaalloogg BBooxx

    The XML markup created out of the box, for both installed doctypes and custom doctypes, iscompletely dependent on the robustness of the DCF file and, for additional enhancements,Styler stylesheets because the target markup depends on these doctype definitions todetermine desirable markup for paragraphs, titles, lists, tables, graphics, and other basicelement options. If you wish to customize copy/paste markup, use the Arbortext Import MapTemplate Editor included in Arbortext Architect to create more specific markup fromclipboard data.

    CClliippbbooaarrdd FFoorrmmaatt PPrreecceeddeenncceeSince many applications, especially Microsoft applications, use more than one of the formatssupported by CopyPaste, there is a particular order controlling how data is converted to XMLmarkup.

  • 68 XML Basics and Authoring

    CClliippbbooaarrdd PPrreecceeddeennccee

    FFoorrmmaatt DDeessccrriippttiioonn

    MIF Since MIF is the most unique format and is only created by Frame-Maker, if MIF data is found first in the clipboard list it is processedusing an Import MIF driver. Adobe always puts MIF data beforeRTF, so this ensures precedence barring a change of behavior inFrameMaker.

    RTF RTF takes second in the order of precedence. Microsoft Word andExcel and Outlook plain text email messages place RTF data aheadof HTML in the clipboard list, so this ensures we default to RTF.

    HTML HTML is third in the order of precedence. Web browsers use HTMLas the primary clipboard format. Internet Explorer and HTML-for-matted email windows in Outlook place the HTML format ahead ofRTF on the clipboard.

    Unicode text If none of the previous formats are found, Unicode text is used. Bydefault, the paste operation does not use Smart CopyPaste. To pastemultiple paragraphs, you can use the Paste Special dialog box topaste as paragraphs (or most other paste as types).

    ANSI text (8bit) Plain ANSI text takes the last priority. If none of the previous for-mats are found, 8-bit text is used. By default, the paste operationdoes not use Smart CopyPaste. To paste multiple paragraphs, you-can use the paste special dialog box to paste as paragraphs (or mostother paste as types).

    PPaasstteeaabbllee EElleemmeennttssThe types of elements supported in a smart paste operation are defined by two things:

    1. On the source side, there are the constructs (or objects) that have clear definitions inMicrosoft Word. Word can be considered the full set, while the other formats aregenerally subsets of the Word superset

    2. On the destination side, there are the elements that can be defined in a DCF file or Stylerstylesheet and related to the source objects.

    Some types of data are explicitly defined in terms of their structure; in other words, there isusually no ambiguity. Other types of data imply structure that may or may not reflect thedesired target in XML.

    TechPubs Global, Inc.

  • Using TechAuthor 69

    EExxpplliicciitt oorr IImmpplliieedd OObbjjeeccttss//TTyyppeess

    TTyyppee RRTTFF MMIIFF HHTTMMLL TTeexxtt

    Paragraphs X X X X

    Titles X

    Divisions X

    Tables X X

    Graphic

    (Graphic information is not providedfor MIF. Inline versus block can beambiguous.)

    X X

    Links and cross references X X X

    Index terms X X

    Inline emphasis

    (bold, italic, underline)

    X X X

    Link targets

    (IDs or bookmarks)

    X X X

    Division titles

    (H1, H2, H3, and so on)

    X

    Divisions and their titles

    (Titles can only be inferred from so-called built-in style names, such asHeading 1 or by explicitly definingthe style names used for titles in Wordand FrameMaker.)

    X X

    IInnsseerrttiinngg CCoommmmeennttssCCoommmmeennttss allow you to include notes in the document for yourself or others. Thesecomments appear in the TechAuthor window; however, they do not render in formattedoutputs.

    Comments can also be used during the authoring process to temporarily exclude content(comment out). This can be useful to temporarily remove content that is not quite readyfrom being included in a publish or preview of the work in progress.

  • 70 XML Basics and Authoring

    NNootteeRequired tags cannot be commented out.

    To use comments:

    1. In the document, do one of the following:

    Place your cursor where you want the comment inserted.

    Select the content you want to comment out.

    2. From the menu bar, select IInnsseerrtt CCoommmmeenntt.

    NNootteeIf the Comment menu option does not appear, ensure full menus are enabled. SeeEnabling Full Menus on page 36.

    The comment appears in the document, either as an empty begin and end tag orsurrounding the selected content.

    NNeeww CCoommmmeenntt

    CCoommmmeenntteedd CCoonntteenntt

    3. To include content that has been commented out:

    a. Select the comment.

    b. From the menu bar, select EEddiitt UUnnccoommmmeenntt.

    You can also manually create a comment by selecting the content to be commented out and,from the menu bar, selecting EEddiitt EEddiitt SSeelleeccttiioonn aass XXMMLL