<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" media="screen" href="/~d/styles/rss2full.xsl"?><?xml-stylesheet type="text/css" media="screen" href="http://feeds.feedburner.com/~d/styles/itemcontent.css"?><rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:sy="http://purl.org/rss/1.0/modules/syndication/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0" version="2.0">

<channel>
	<title>Structured Authoring</title>
	
	<link>http://structuredauthoring.org</link>
	<description>Learning Structured Authoring - Tools and Processes</description>
	<lastBuildDate>Tue, 17 Aug 2010 15:03:47 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0.1</generator>
		<atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="self" type="application/rss+xml" href="http://feeds.feedburner.com/StructuredAuthoring" /><feedburner:info uri="structuredauthoring" /><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="hub" href="http://pubsubhubbub.appspot.com/" /><feedburner:browserFriendly></feedburner:browserFriendly><item>
		<title>Properly Removing Attributes</title>
		<link>http://structuredauthoring.org/sa/properly-removing-attributes/</link>
		<comments>http://structuredauthoring.org/sa/properly-removing-attributes/#comments</comments>
		<pubDate>Tue, 17 Aug 2010 14:07:49 +0000</pubDate>
		<dc:creator>douglaspaulwade</dc:creator>
				<category><![CDATA[Structured Authoring]]></category>

		<guid isPermaLink="false">http://structuredauthoring.org/?p=568</guid>
		<description><![CDATA[Often elements will have attributes, which are extra bits of information. Attributes appear inside the opening tag and their value is always inside quotation marks. They look something like this: &#60;tagname attribute=&#34;value&#34;&#62;content&#60;/tagname&#62; Often, writers will remove the value, but not the attribute. The proper way is to delete the unnecessary attribute. Improper Method of Deleting [...]]]></description>
			<content:encoded><![CDATA[<p>Often elements will have attributes, which are extra bits of information. Attributes appear inside the opening tag and their value is always inside quotation marks. They look something like this:
<div class="dean_ch" style="white-space: wrap;"><span class="sc3"><span class="re1">&lt;tagname</span> <span class="re0">attribute</span>=<span class="st0">&quot;value&quot;</span><span class="re2">&gt;</span></span>content<span class="sc3"><span class="re1">&lt;/tagname<span class="re2">&gt;</span></span></span></div>
<p>Often, writers will remove the value, but not the attribute. The proper way is to delete the unnecessary attribute.</p>
<h2>Improper Method of Deleting Attributes</h2>
<p>When an attribute is not required, it is important to delete the attribute and not null it out (as just remove the value).<br />
For example below, the label attribute has been nulled out.<br />
<a rel="attachment wp-att-582" href="http://structuredauthoring.org/sa/properly-removing-attributes/attachment/arbortext-att-bad-3/"><img class="size-full wp-image-582 alignnone" title="arbortext-att-bad" src="http://structuredauthoring.org/wp-content/uploads/2010/08/arbortext-att-bad2.png" alt="" width="315" height="67" /></a></p>
<p>In this example, the label attribute has been deleted.</p>
<p><a rel="attachment wp-att-570" href="http://structuredauthoring.org/sa/properly-removing-attributes/attachment/arbortext-att-good/"></a><a rel="attachment wp-att-583" href="http://structuredauthoring.org/sa/properly-removing-attributes/attachment/arbortext-att-good-3/"><img class="size-full wp-image-583 alignnone" title="arbortext-att-good" src="http://structuredauthoring.org/wp-content/uploads/2010/08/arbortext-att-good2.png" alt="" width="338" height="66" /></a></p>
<h2>Proper Method of Deleting an Attribute</h2>
<p>To delete an attribute, place the cursor inside the start tag of the element, open the Modify Attributes dialog box (CTRL-D), and click inside the attribute text box for the attribute to be deleted. Then click Delete and finally click OK to close the Modify Attributes dialog box.</p>
<p><span style="color: #0000ff;">Tip: </span>Attributes that have been modified are displayed in <span style="color: #0000ff;">blue</span> text in the Modify Attributes dialog box.</p>
<p><a rel="attachment wp-att-571" href="http://structuredauthoring.org/sa/properly-removing-attributes/attachment/arbortext-att/"><img class="alignleft size-full wp-image-571" title="arbortext-att" src="http://structuredauthoring.org/wp-content/uploads/2010/08/arbortext-att.png" alt="" width="444" height="388" /></a></p>
]]></content:encoded>
			<wfw:commentRss>http://structuredauthoring.org/sa/properly-removing-attributes/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Arbortext Editor Tip – Easing the Burden of Spell Check</title>
		<link>http://structuredauthoring.org/arbortext-editor/arbortext-editor-tip-easing-burden-spell-check/</link>
		<comments>http://structuredauthoring.org/arbortext-editor/arbortext-editor-tip-easing-burden-spell-check/#comments</comments>
		<pubDate>Fri, 25 Jun 2010 16:50:28 +0000</pubDate>
		<dc:creator>JeffStein</dc:creator>
				<category><![CDATA[Arbortext Editor]]></category>
		<category><![CDATA[Tip]]></category>

		<guid isPermaLink="false">http://structuredauthoring.org/?p=544</guid>
		<description><![CDATA[Checking a document for spelling errors is not one of my favorite tasks. I usually receive a lot of false hits, thanks to the nature of the technical manuals in my current job. For example, some manuals include a long series of part numbers that would never appear in the official dictionary used by the [...]]]></description>
			<content:encoded><![CDATA[<p>Checking a document for spelling errors is not one of my favorite tasks. I usually receive a lot of false hits, thanks to the nature of the technical manuals in my current job. For example, some manuals include a long series of part numbers that would never appear in the official dictionary used by the spell checker. Clicking the Ignore All button helps, but it can still feel like wading through a swamp.</p>
<p>Recently I have changed my overall approach. Instead of waiting until a document is nearly finished, I look for errors throughout the process of working on the document. This approach requires that Arbortext Editor&#8217;s preferences be set to check spelling as you type.</p>
<p><a rel="attachment wp-att-558" href="http://structuredauthoring.org/arbortext-editor/arbortext-editor-tip-easing-burden-spell-check/attachment/spelling-preferences-2/"><img class="alignnone size-full wp-image-558" src="http://structuredauthoring.org/wp-content/uploads/2010/06/spelling-preferences1.png" alt="spelling preferences" width="334" height="140" /></a></p>
<p>As you work on a document, watch out for words that have red squiggly lines beneath them. Arbortext uses these lines to highlight possible errors.</p>
<p><a rel="attachment wp-att-564" href="http://structuredauthoring.org/arbortext-editor/arbortext-editor-tip-easing-burden-spell-check/attachment/red-squiggly-line-2/"><img class="alignnone size-full wp-image-564" src="http://structuredauthoring.org/wp-content/uploads/2010/06/red-squiggly-line-2.png" alt="red squiggly line" width="414" height="103" /></a></p>
<p>When you right-click a word that has been highlighted, a context menu appears with spelling suggestions (if available) and various spell check options, such as Ignore All and Add to Dictionary.</p>
<p><a rel="attachment wp-att-545" href="http://structuredauthoring.org/arbortext-editor/arbortext-editor-tip-easing-burden-spell-check/attachment/spelling-context-menu/"><img class="alignnone size-full wp-image-545" src="http://structuredauthoring.org/wp-content/uploads/2010/06/spelling-context-menu.png" alt="context menu" width="176" height="244" /></a></p>
]]></content:encoded>
			<wfw:commentRss>http://structuredauthoring.org/arbortext-editor/arbortext-editor-tip-easing-burden-spell-check/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Arbortext Editor Tip – Completeness Errors Window</title>
		<link>http://structuredauthoring.org/arbortext-editor/arbortext-editor-tip-completeness-errors/</link>
		<comments>http://structuredauthoring.org/arbortext-editor/arbortext-editor-tip-completeness-errors/#comments</comments>
		<pubDate>Sun, 25 Apr 2010 17:42:17 +0000</pubDate>
		<dc:creator>JeffStein</dc:creator>
				<category><![CDATA[Arbortext Editor]]></category>
		<category><![CDATA[Tip]]></category>

		<guid isPermaLink="false">http://structuredauthoring.org/?p=529</guid>
		<description><![CDATA[Arbortext Editor has a nice feature that enables you to check a document for various types of errors. To use this feature, go to the Tools menu and click Check Completeness. If any problems are found, Arbortext displays a window that lists the errors. I usually find that my document contains a bunch of broken [...]]]></description>
			<content:encoded><![CDATA[<p>Arbortext Editor has a nice feature that enables you to check a document for various types of errors. To use this feature, go to the Tools menu and click Check Completeness.</p>
<p>If any problems are found, Arbortext displays a window that lists the errors. I usually find that my document contains a bunch of broken cross references.</p>
<p><a rel="attachment wp-att-532" href="http://structuredauthoring.org/arbortext-editor/arbortext-editor-tip-completeness-errors/attachment/completeness-errors-idref/"><img class="alignnone size-full wp-image-532" src="http://structuredauthoring.org/wp-content/uploads/2010/04/completeness-errors-idref.png" alt="Arbortext Editor Completeness Check" width="424" height="253" /></a></p>
<p>Notice the first sentence in the upper part of the window: &#8220;Double click the left mouse button on any object in error to position the cursor at the point of error, or to cycle through occurrences of the error.&#8221;</p>
<p>This statement is not particularly helpful with respect to broken cross references. What you need to do is double-click the underlined phrase <span style="text-decoration: underline">&#8220;show ids&#8221;</span>. This action causes the IDs and ID References dialog box to appear. From there, look for any rows that have the word &#8220;MISSING&#8221; in the Element column.</p>
]]></content:encoded>
			<wfw:commentRss>http://structuredauthoring.org/arbortext-editor/arbortext-editor-tip-completeness-errors/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Arbortext Editor Tip – Fun with Macros</title>
		<link>http://structuredauthoring.org/arbortext-editor/arbortext-editor-tip-fun-macros/</link>
		<comments>http://structuredauthoring.org/arbortext-editor/arbortext-editor-tip-fun-macros/#comments</comments>
		<pubDate>Sat, 27 Mar 2010 01:16:46 +0000</pubDate>
		<dc:creator>JeffStein</dc:creator>
				<category><![CDATA[Arbortext Editor]]></category>
		<category><![CDATA[Tip]]></category>

		<guid isPermaLink="false">http://structuredauthoring.org/?p=496</guid>
		<description><![CDATA[As I was glancing through the Arbortext Editor menus not long ago, I came across the macro feature. Where I work, we are always looking for ways to do things more efficiently, so I decided to check out this tool. To record a macro, you go to the Tools menu, point to Macros, and click [...]]]></description>
			<content:encoded><![CDATA[<p>As I was glancing through the Arbortext Editor menus not long ago, I came across the macro feature. Where I work, we are always looking for ways to do things more efficiently, so I decided to check out this tool.</p>
<p>To record a macro, you go to the Tools menu, point to Macros, and click Record New Macro. The dialog box that appears allows you to specify a name, the file where the macro will be stored (more on that in a second), and a description.</p>
<p><a rel="attachment wp-att-500" href="http://structuredauthoring.org/arbortext-editor/arbortext-editor-tip-fun-macros/attachment/record-macro-dialog-2/"><img class="alignnone size-full wp-image-500" src="http://structuredauthoring.org/wp-content/uploads/2010/03/record-macro-dialog1.png" alt="Record Macro dialog box" width="332" height="231" /></a></p>
<p>For the macro storage location, you need to determine the scope. The default choice enables you to use the macro with any file. The other two choices enable you to use the macro only with the current document, or with all documents of the same type. I haven&#8217;t yet felt the need to change the default choice.</p>
<p>Specify the information, click OK, and then perform the actual steps. When you are done, click the Stop Recording button.</p>
<p>To run a macro, place your cursor in the appropriate place and use the Alt+F8 keyboard shortcut to display the list of recorded macros. Select the desired macro and click Run. The macro does its thing.</p>
]]></content:encoded>
			<wfw:commentRss>http://structuredauthoring.org/arbortext-editor/arbortext-editor-tip-fun-macros/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Arbortext Editor Tip – More on Collapsing and Expanding</title>
		<link>http://structuredauthoring.org/arbortext-editor/arbortext-editor-tip-collapsing-expanding/</link>
		<comments>http://structuredauthoring.org/arbortext-editor/arbortext-editor-tip-collapsing-expanding/#comments</comments>
		<pubDate>Sun, 21 Feb 2010 16:38:42 +0000</pubDate>
		<dc:creator>JeffStein</dc:creator>
				<category><![CDATA[Arbortext Editor]]></category>
		<category><![CDATA[Tip]]></category>

		<guid isPermaLink="false">http://structuredauthoring.org/?p=483</guid>
		<description><![CDATA[In an earlier post, Douglas Wade reviewed the basics of collapsing and expanding in Arbortext Editor. I would like to add a few thoughts about this feature as it relates to tables. ﻿ I recently started working on some SGML files that have large tables. I&#8217;m talking really large. I found that the performance of [...]]]></description>
			<content:encoded><![CDATA[<p>In an earlier post, Douglas Wade reviewed the basics of <a href="http://structuredauthoring.org/arbortext-editor/arbortext-tip-collapse-expand-elements/">collapsing and expanding</a> in Arbortext Editor. I would like to add a few thoughts about this feature as it relates to tables. ﻿</p>
<p>I recently started working on some SGML files that have large tables. I&#8217;m talking really large. I found that the performance of Arbortext Editor slowed considerably whenever I encountered one of these tables.</p>
<p>Then I received a great piece of advice: If you&#8217;re not working on tables, collapse them.</p>
<p>You can start by closing all of the tables in your file. Go to the View menu and select Collapse/Expand Divisions. Select the table element and click Collapse.<a rel="attachment wp-att-489" href="http://structuredauthoring.org/arbortext-editor/arbortext-editor-tip-collapsing-expanding/attachment/collapse-expand-divisions/"><img class="alignnone size-full wp-image-489" src="http://structuredauthoring.org/wp-content/uploads/2010/02/collapse-expand-divisions.png" alt="Collapse/Expand Divisions" width="303" height="221" /></a></p>
<p>Now when you need to work on a specific table, expand that table, do whatever you need to do, and collapse it again when you&#8217;re done.</p>
]]></content:encoded>
			<wfw:commentRss>http://structuredauthoring.org/arbortext-editor/arbortext-editor-tip-collapsing-expanding/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Arbortext Editor Tip – Identifying Text Entities</title>
		<link>http://structuredauthoring.org/arbortext-editor/arbortext-editor-tip-identifying-text-entities/</link>
		<comments>http://structuredauthoring.org/arbortext-editor/arbortext-editor-tip-identifying-text-entities/#comments</comments>
		<pubDate>Sat, 16 Jan 2010 21:25:15 +0000</pubDate>
		<dc:creator>JeffStein</dc:creator>
				<category><![CDATA[Arbortext Editor]]></category>
		<category><![CDATA[Tip]]></category>

		<guid isPermaLink="false">http://structuredauthoring.org/?p=456</guid>
		<description><![CDATA[In Arbortext Editor, a text entity is a named piece of content. For example, you could create a text entity called Product Name with the content Widget Analyzer 2010. Text entities help you to achieve consistency both within and across documents. Simple enough, right? Let&#8217;s assume that you have an SGML file open and you [...]]]></description>
			<content:encoded><![CDATA[<p>In Arbortext Editor, a text entity is a named piece of content. For example, you could create a text entity called <strong>Product Name</strong> with the content <strong>Widget Analyzer 2010</strong>. Text entities help you to achieve consistency both within and across documents. Simple enough, right?</p>
<p>Let&#8217;s assume that you have an SGML file open and you know that a particular phrase or sentence is already a text entity &#8212; but you don&#8217;t know the unique name of the text entity. How can you easily figure out the name?</p>
<p>One of my co-workers said that she goes to the View menu and selects Text Entities. The content of the text entity is replaced by a tag that displays the name.</p>
<p><a rel="attachment wp-att-455" href="http://structuredauthoring.org/arbortext-editor/arbortext-editor-tip-identifying-text-entities/attachment/text-entities-tag/"><img class="alignnone size-medium wp-image-455" src="http://structuredauthoring.org/wp-content/uploads/2010/01/text-entities-tag-300x40.png" alt="text entity tag" width="300" height="40" /></a></p>
<p>Then I told her my approach. Place your cursor inside the phrase or sentence and choose Entities &gt; Text. The Text Entities dialog box appears with the entity highlighted.</p>
<p><a rel="attachment wp-att-454" href="http://structuredauthoring.org/arbortext-editor/arbortext-editor-tip-identifying-text-entities/attachment/text-entities-db/"><img class="alignnone size-full wp-image-454" src="http://structuredauthoring.org/wp-content/uploads/2010/01/text-entities-db.png" alt="Text Entities Dialog Box" width="456" height="176" /></a></p>
<p>My co-worker said that she liked my approach better. Sweet!</p>
]]></content:encoded>
			<wfw:commentRss>http://structuredauthoring.org/arbortext-editor/arbortext-editor-tip-identifying-text-entities/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>PubWright Podcast</title>
		<link>http://structuredauthoring.org/sa/pubwright-podcast/</link>
		<comments>http://structuredauthoring.org/sa/pubwright-podcast/#comments</comments>
		<pubDate>Tue, 10 Nov 2009 15:00:26 +0000</pubDate>
		<dc:creator>douglaspaulwade</dc:creator>
				<category><![CDATA[Podcast]]></category>
		<category><![CDATA[Structured Authoring]]></category>
		<category><![CDATA[Arbortext Editor]]></category>

		<guid isPermaLink="false">http://structuredauthoring.org/?p=417</guid>
		<description><![CDATA[My friend Liz Fraley of Single-Sourcing Solutions asked to interview me in a podcast. We have chatted over the last few months on how we wanted to do this. I knew I want to, I needed to learn that medium. So, we played with some technology, and using Skype, and recorders on both ends and [...]]]></description>
			<content:encoded><![CDATA[<p>My friend Liz Fraley of <a href="http://www.single-sourcing.com/">Single-Sourcing Solutions</a> asked to interview me in a podcast. We have chatted over the last few months on how we wanted to do this. I knew I want to, I needed to learn that medium. So, we played with some technology, and using Skype, and recorders on both ends and we hammered out the first podcast.</p>
<p>Liz took the raw recordings and enhanced them and the conversation sounded good. The podcast collection is called PubWright Podcasts; it is mostly about the Arbortext community. The PubWright <span>podcast</span> interviews Arbortext implementers, customers, and experts in an attempt to share knowledge with the greater Arbortext community. The first podcast featured me. I wanted few more episodes to be released, before I mentioned anything,  (the quality of the guest can only go up). So check out the podcast.</p>
<div id=":14">This is a <span>Podcast</span> series available <a href="http://podcast.single-sourcing.com/" target="_blank">here</a> and on iTunes <a href="http://itunes.apple.com/WebObjects/MZStore.woa/wa/viewPodcast?id=333381845" target="_blank">here</a>.</p>
<p><a href="http://podcast.single-sourcing.com/" target="_blank">http://<span>podcast</span>.<span>single</span>-sourcing.com</a></p>
</div>
]]></content:encoded>
			<wfw:commentRss>http://structuredauthoring.org/sa/pubwright-podcast/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Wiki Help Files</title>
		<link>http://structuredauthoring.org/sa/wiki-help-file/</link>
		<comments>http://structuredauthoring.org/sa/wiki-help-file/#comments</comments>
		<pubDate>Mon, 09 Nov 2009 15:00:15 +0000</pubDate>
		<dc:creator>douglaspaulwade</dc:creator>
				<category><![CDATA[ACL]]></category>
		<category><![CDATA[Arbortext Editor]]></category>
		<category><![CDATA[Perl]]></category>
		<category><![CDATA[Structured Authoring]]></category>
		<category><![CDATA[wiki]]></category>

		<guid isPermaLink="false">http://structuredauthoring.org/?p=409</guid>
		<description><![CDATA[One thing that I think about all the time is how to improve documentation. One thing I would like to have is documentation that is context sensitive in Arbortext and collaborative.  At work we have a style guide which determines &#8220;what&#8221; we are to do but rather than &#8220;how&#8221; to do it.  Many years ago, [...]]]></description>
			<content:encoded><![CDATA[<p>One thing that I think about all the time is how to improve documentation. One thing I would like to have is documentation that is context sensitive in Arbortext and collaborative.  At work we have a style guide which determines &#8220;what&#8221; we are to do but rather than &#8220;how&#8221; to do it.  Many years ago, I placed all of the &#8220;how to&#8221; documentation into Microsoft Word, saved it out as PDF, yet I struggled with this. Next, I desired to work more in XML, so I adopted Docbook. All the Microsoft documents were converted to Docbook which I pushed out, HTML pages, PDF files, and Microsoft Help (.chm) files.</p>
<p>The biggest issue was that I was the single bellybutton to all the documentation. I strived for a collaborative solution. I worked with Wiki&#8217;s and set out to install one. Our corporate structure would not allow me to install one. The company had just created one, and they only wanted one in the company culture. I was not sure that I wanted all my documentation out there for all to see. Because I work for a large aerospace company. However, I got over it; it was more important to have collaborative tools rather than my pride. I imported all the docbook information into our Wiki.</p>
<p>The biggest complaint of the wiki was its weak search. I wanted a way for a writer who is authoring in a SGML/XML file, to hit the help button and go to an exact area in the documentation. The Arbortext Editor has the Shift-F1 to present a customized help. I played with it trying to add hyperlinks to those files. With the help of the <a href="http://portal.ptcuser.org/l/pw/rs">adepters</a> mailing list and <a href="mailto:chelberg@terraxml.com">Clay Helberg</a> (a Arbortext guru), he mentioned a few things, one being of which is remapping the Shift-F1 key. The other is how to open a file. So, I used the <em>browse_url</em> function which launches a HTML page, in my case a Wiki page. I needed to add more information in the URL based on the two things: the DTD name and element name. In the Wiki, I am using subpages which are like a collection. All pages will be a subpages grouped in &#8220;Structured-Elements&#8221; and also &#8220;38784&#8243; (the DTD name) followed by the tag name. The tag is found using the ACL functions of  <em>oid_name(oid_caret())</em>. The <em>oid_caret</em> is the cursor position and <em>oid_name</em> is the name of the element. So below is the code snippet: I placed it inside my ACL file located at  (&lt;arbortext-home&gt;/custom/editinit) which gets sourced when a document is opened.</p>
<div class="dean_ch" style="white-space: wrap;"><span class="re0">$dtd</span> = public_id<span class="br0">&#40;</span><span class="br0">&#41;</span>;<br />
<span class="kw1">if</span> <span class="br0">&#40;</span>match<span class="br0">&#40;</span><span class="re0">$dtd</span>,<span class="st0">&quot;38784&quot;</span> <span class="br0">&#41;</span><span class="br0">&#41;</span> <span class="br0">&#123;</span><br />
&nbsp; &nbsp; &nbsp;<a href="http://perldoc.perl.org/functions/map.html"><span class="kw3">map</span></a> shift-f1 <span class="br0">&#123;</span> browse_url<span class="br0">&#40;</span><span class="st0">&quot;http://wiki.yourcompany.com/wiki/Structured-Elements/&quot;</span> . &nbsp;<span class="st0">&quot;38784/&quot;</span> . oid_name<span class="br0">&#40;</span>oid_caret<span class="br0">&#40;</span><span class="br0">&#41;</span><span class="br0">&#41;</span> <span class="br0">&#41;</span> <span class="br0">&#125;</span><br />
<span class="br0">&#125;</span></div>
<p>When the writers place the cursor inside an element, for example,  &lt;title&gt;, and then does a Shift-F1, the Arbortext Editor will open to a Wiki page by element and DTD name.</p>
<p>That was the easy part, now is the hard part; populating the Wiki with content on the elements. With Mil-Spec DTD&#8217;s (some of our work uses them), we have a TDT file (it contains all the element names and attributes with descriptions). My co-worker, Joe, our other Software Engineer, wrote a Perl script to convert each element to a Wiki page. I will import a couple of hundred new Wiki pages here in the next few days.</p>
<p>The final part is adding extra links in these new pages to the established Wiki pages, therefore linking the entire project together.</p>
]]></content:encoded>
			<wfw:commentRss>http://structuredauthoring.org/sa/wiki-help-file/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Removing Unused Graphics</title>
		<link>http://structuredauthoring.org/sa/removing-unused-graphics/</link>
		<comments>http://structuredauthoring.org/sa/removing-unused-graphics/#comments</comments>
		<pubDate>Thu, 05 Nov 2009 23:35:32 +0000</pubDate>
		<dc:creator>douglaspaulwade</dc:creator>
				<category><![CDATA[ACL]]></category>
		<category><![CDATA[Structured Authoring]]></category>
		<category><![CDATA[Arbortext Editor]]></category>

		<guid isPermaLink="false">http://structuredauthoring.org/?p=388</guid>
		<description><![CDATA[In SGML files graphics are declared. Once they are declared they can be referenced in elements such as &#60;graphic&#62; or whatever your DTD declares. Often during the development of the files, some graphic declarations are created but never used. It is a good practice to remove graphic declarations that are not required. I came across [...]]]></description>
			<content:encoded><![CDATA[<p>In SGML files graphics are declared. Once they are declared they can be referenced in elements such as <strong>&lt;graphic&gt; </strong>or whatever your DTD declares. Often during the development of the files, some graphic declarations are created but never used. It is a good practice to remove graphic declarations that are not required.</p>
<p>I came across this ACL file from Karl Johan Kleist (original code by Rune Kallhovd) on <a title="Adepters.org" href="http://www.adepters.org/aclhowtoremoveunusedgraphicentitesfromad" target="_blank">Adepters</a> website, listed below.</p>
<p>I named that code below as <strong>removeUnusedGraphics.acl </strong>and placed it in <strong>&lt;arbortext home&gt;/custom/scripts</strong> folder. I tied it to a menu on init ACL file (<strong>&lt;arbortext home&gt;/custom/editinit</strong>) that runs when a document is opened. It has these items added in the menu. First, the file is sourced. second, call the function, <strong>clean_unused_gfxents()</strong> when the menu item is selected.</p>
<div id="attachment_391" class="wp-caption alignnone" style="width: 263px"><img class="size-full wp-image-391 " title="Remove Unused Graphic Menu Pick" src="http://structuredauthoring.org/wp-content/uploads/2009/11/menu.png" alt="Remove Unused Graphic Menu Pick" width="253" height="348" /><p class="wp-caption-text">Remove Unused Graphic Menu Pick</p></div>
<p>Items to add to the Menu<strong>*</strong></p>
<div class="dean_ch" style="white-space: wrap;">source removeUnusedGraphics.acl<br />
menu_add <span class="st0">&quot;.TechData.&quot;</span> <span class="st0">&quot;Remove all unused graphic entities&quot;</span> -cmd <span class="br0">&#123;</span> clean_unused_gfxents<span class="br0">&#40;</span><span class="br0">&#41;</span> <span class="br0">&#125;</span></div>
<p>Code File</p>
<div class="dean_ch" style="white-space: wrap;"><span class="co1"># Rune Kallhovd and Karl Johan Kleist</span><br />
<span class="co1"># Posted 2006-06-18 to adepters.org</span></p>
<p>function clean_unused_gfxents<span class="br0">&#40;</span>doc,op<span class="br0">&#41;</span> <span class="br0">&#123;</span></p>
<p>&nbsp; &nbsp; <a href="http://perldoc.perl.org/functions/local.html"><span class="kw3">local</span></a> entArr<span class="br0">&#91;</span><span class="br0">&#93;</span>, gfxArr<span class="br0">&#91;</span><span class="br0">&#93;</span>;<br />
&nbsp; &nbsp; <a href="http://perldoc.perl.org/functions/local.html"><span class="kw3">local</span></a> entArrlen = <span class="nu0">0</span>;<br />
&nbsp; &nbsp; <a href="http://perldoc.perl.org/functions/local.html"><span class="kw3">local</span></a> gfxCnt = <span class="nu0">1</span>;</p>
<p>&nbsp; &nbsp; <span class="kw1">if</span> <span class="br0">&#40;</span>op != <span class="nu0">2</span><span class="br0">&#41;</span> <span class="br0">&#123;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <a href="http://perldoc.perl.org/functions/return.html"><span class="kw3">return</span></a> <span class="nu0">0</span>;<br />
&nbsp; &nbsp; <span class="br0">&#125;</span></p>
<p><span class="co1"># Building an Array of declared entities:</span></p>
<p>&nbsp; &nbsp; entArrlen = graphic_entity_names<span class="br0">&#40;</span>entArr, doc<span class="br0">&#41;</span>;</p>
<p><span class="co1"># Building an Array of used entities:</span></p>
<p>&nbsp; &nbsp; <span class="kw1">for</span> <span class="br0">&#40;</span>o = oid_first<span class="br0">&#40;</span>doc<span class="br0">&#41;</span>; oid_valid<span class="br0">&#40;</span>o<span class="br0">&#41;</span>; o = oid_forward<span class="br0">&#40;</span>o<span class="br0">&#41;</span><span class="br0">&#41;</span> <span class="br0">&#123;</span></p>
<p>&nbsp; &nbsp; &nbsp; &nbsp; <span class="co1"># Do we have a Graphic tag?</span></p>
<p>&nbsp; &nbsp; &nbsp; &nbsp; <span class="kw1">if</span> <span class="br0">&#40;</span>graphic_tag<span class="br0">&#40;</span>oid_name<span class="br0">&#40;</span>o<span class="br0">&#41;</span><span class="br0">&#41;</span><span class="br0">&#41;</span> <span class="br0">&#123;</span></p>
<p>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="co1"># Get the attribute name holding the ENTITY</span></p>
<p>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <a href="http://perldoc.perl.org/functions/local.html"><span class="kw3">local</span></a> gfxentnam = graphic_entity_attr_name<span class="br0">&#40;</span>oid_name<span class="br0">&#40;</span>o<span class="br0">&#41;</span><span class="br0">&#41;</span>;</p>
<p>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="kw1">if</span> <span class="br0">&#40;</span>gfxentnam != <span class="st0">&quot;&quot;</span><span class="br0">&#41;</span> <span class="br0">&#123;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; gfxArr<span class="br0">&#91;</span>gfxCnt<span class="br0">&#93;</span> = oid_attr<span class="br0">&#40;</span>o, gfxentnam<span class="br0">&#41;</span>;<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; gfxCnt++;<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#125;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#125;</span><br />
&nbsp; &nbsp; <span class="br0">&#125;</span></p>
<p><span class="co1"># Iterate over declared entities, and delete unused ones:</span></p>
<p>&nbsp; &nbsp; <span class="kw1">for</span> <span class="br0">&#40;</span>i = <span class="nu0">1</span>; i &lt;= entArrlen; i++<span class="br0">&#41;</span> <span class="br0">&#123;</span></p>
<p>&nbsp; &nbsp; &nbsp; &nbsp; <a href="http://perldoc.perl.org/functions/local.html"><span class="kw3">local</span></a> found = <span class="nu0">0</span>;</p>
<p>&nbsp; &nbsp; &nbsp; &nbsp; ent = entArr<span class="br0">&#91;</span>i<span class="br0">&#93;</span>;</p>
<p>&nbsp; &nbsp; &nbsp; &nbsp; <span class="kw1">for</span> <span class="br0">&#40;</span>gfx in gfxArr<span class="br0">&#41;</span> <span class="br0">&#123;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="kw1">if</span> <span class="br0">&#40;</span>gfxArr<span class="br0">&#91;</span>gfx<span class="br0">&#93;</span> == ent<span class="br0">&#41;</span> <span class="br0">&#123;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; found = <span class="nu0">1</span>;<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#125;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#125;</span></p>
<p>&nbsp; &nbsp; &nbsp; &nbsp; <span class="kw1">if</span> <span class="br0">&#40;</span>!found<span class="br0">&#41;</span> <span class="br0">&#123;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; undeclare_entity <span class="re0">$ent</span>; &nbsp;<span class="co1"># NOTE: dollar sign needed here / kjk</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#125;</span><br />
&nbsp; &nbsp; <span class="br0">&#125;</span><br />
<span class="br0">&#125;</span></p>
<p><span class="co1"># Add the following to e.g. a init() function:</span><br />
doc_add_callback<span class="br0">&#40;</span><span class="nu0">0</span>, <span class="st0">&#8216;save&#8217;</span>, <span class="st0">&#8216;cor_utils::clean_unused_gfxents&#8217;</span>, <span class="st0">&#8216;PREPEND&#8217;</span><span class="br0">&#41;</span>;</div>
<p><strong>*</strong> Menu article coming soon&#8230;</p>
]]></content:encoded>
			<wfw:commentRss>http://structuredauthoring.org/sa/removing-unused-graphics/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Starting with Arbortext’s ACL Language – Part 4</title>
		<link>http://structuredauthoring.org/sa/starting-arbortexts-acl-language-part-4/</link>
		<comments>http://structuredauthoring.org/sa/starting-arbortexts-acl-language-part-4/#comments</comments>
		<pubDate>Wed, 04 Nov 2009 14:45:35 +0000</pubDate>
		<dc:creator>douglaspaulwade</dc:creator>
				<category><![CDATA[ACL]]></category>
		<category><![CDATA[Arbortext Editor]]></category>
		<category><![CDATA[Structured Authoring]]></category>
		<category><![CDATA[arbortext]]></category>
		<category><![CDATA[array]]></category>

		<guid isPermaLink="false">http://structuredauthoring.org/?p=376</guid>
		<description><![CDATA[ACL, Arbortext&#8217;s Command Language, it is similar to Perl which is the programming language I prefer. See Part 1, Part 2 and Part 3. Arrays Arrays are special variables with multiple &#8220;compartments&#8221;. Each compartment holds a value. Arrays consist of names and indexes. ACL has two types of one-dimensional arrays: Normal arrays are indexed by [...]]]></description>
			<content:encoded><![CDATA[<p>ACL, Arbortext&#8217;s Command Language, it is similar to Perl which is the programming language I prefer. See <a title="ACL Part 1" href="http://structuredauthoring.org/arbortext-editor/arbortexts-acl-language/" target="_blank">Part 1</a>, <a title="ACL Part 2" href="http://structuredauthoring.org/arbortext-editor/arbortexts-acl-language-part-2/" target="_blank">Part 2</a> and <a href="http://structuredauthoring.org/sa/starting-arbortexts-acl-language-part-3/">Part 3</a>.</p>
<h2>Arrays</h2>
<p>Arrays are special variables with multiple &#8220;compartments&#8221;. Each compartment holds a value. Arrays consist of names and indexes. ACL has two types of one-dimensional arrays:</p>
<p><strong>Normal </strong>arrays are indexed by integers subscripts.</p>
<div class="dean_ch" style="white-space: wrap;"><span class="re0">$array</span><span class="br0">&#91;</span><span class="nu0">1</span><span class="br0">&#93;</span> = <span class="st0">&quot;tester&quot;</span>;</div>
<p><strong>Associative </strong>arrays are indexed by arbitrary strings or keys.</p>
<div class="dean_ch" style="white-space: wrap;"><span class="re0">$array</span><span class="br0">&#91;</span><span class="st0">&quot;tester&quot;</span><span class="br0">&#93;</span> = <span class="st0">&quot;debug&quot;</span>;</div>
<h2>Declaring Arrays</h2>
<p>Arrays can be defined as local or global. Define them like a variable, ($) name, square brackets, semicolon. Arrays can be set to a dimension such as having ten values, $array[10].  The square brackets [ ] are used to address or retrieve the elements of an array.</p>
<h2>Accessing Array</h2>
<p>Accessing the keys of an array, use the <strong>for </strong>loop, as in: <em>for (key in array)</em>.<br />
For example, the code below iterates over the two elements of the associative array <strong>color </strong> twice, once with Associative and once with Normal:</p>
<div class="dean_ch" style="white-space: wrap;"><span class="co1">#&#8211; Associative Array</span><br />
<span class="re0">$color</span><span class="br0">&#91;</span><span class="st0">&quot;red&quot;</span><span class="br0">&#93;</span> = <span class="st0">&quot;red&quot;</span>;<br />
<span class="re0">$color</span><span class="br0">&#91;</span><span class="st0">&quot;blue&quot;</span><span class="br0">&#93;</span> = <span class="st0">&quot;blue&quot;</span>;<br />
<span class="kw1">for</span> <span class="br0">&#40;</span><span class="re0">$hue</span> in <span class="re0">$color</span><span class="br0">&#41;</span> <span class="br0">&#123;</span><br />
&nbsp;response<span class="br0">&#40;</span><span class="st0">&quot;the color is &quot;</span> . <span class="re0">$color</span><span class="br0">&#91;</span><span class="re0">$hue</span><span class="br0">&#93;</span><span class="br0">&#41;</span>;<br />
<span class="br0">&#125;</span></p>
<p>unsetvar color; <span class="co1">#&#8211; the color array undeclared</span></p>
<p><span class="co1">#&#8211; Normal Array</span><br />
<span class="re0">$color</span><span class="br0">&#91;</span><span class="nu0">1</span><span class="br0">&#93;</span> = <span class="st0">&quot;red&quot;</span>;<br />
<span class="re0">$color</span><span class="br0">&#91;</span><span class="nu0">2</span><span class="br0">&#93;</span> = <span class="st0">&quot;blue&quot;</span>;<br />
<span class="kw1">for</span> <span class="br0">&#40;</span><span class="re0">$hue</span> in <span class="re0">$color</span><span class="br0">&#41;</span> <span class="br0">&#123;</span><br />
&nbsp;response<span class="br0">&#40;</span><span class="re0">$color</span><span class="br0">&#91;</span><span class="re0">$hue</span><span class="br0">&#93;</span><span class="br0">&#41;</span>;<br />
<span class="br0">&#125;</span></div>
]]></content:encoded>
			<wfw:commentRss>http://structuredauthoring.org/sa/starting-arbortexts-acl-language-part-4/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
	</channel>
</rss>
