[Framers] Another Simple Structured App
cuc tu
cuc2u at hotmail.com
Wed Apr 6 14:58:03 PDT 2022
Hi All,
Sorry, I've been remiss on this topic I've started, but I have been looking when I can (too many things going on).
I have built the EDD and have imported it to a sample source XML file, and have resolved all validation errors. Now I have a wall of attribute text to parse out.
Maybe if we look at how to define this one element:
<ScpiCommand
ClassName="LaunchSetupType"
ClassLongName="Launch Setup Type"
ClassDescription="Sets the launch setup type. Outputs the launch setup type."
String="SYSTem:LAUNch:TYPE"
Overlapping="false"
Lockable="false"
Type="Both">
<CommandParameters>
<Parameter Name="LaunchSetupType" Type="Enum" Enum="LaunchSetup" Description="Launch setup type to be set" />
</CommandParameters>
<QueryResultParameters>
<Parameter Name="LaunchSetupType" Type="Enum" Enum="LaunchSetup" Description="Launch setup type to be read" />
</QueryResultParameters>
<Examples>
<Example Name="SYST:LAUN:TYPE LAST" Description="Sets the launch setup type to Last." />
<Example Name="SYST:LAUN:TYPE?" Description="Outputs the launch setup type." />
</Examples>
</ScpiCommand>
OK, there are several elements there, but here is what I did for the parent element:
Element (Container): ScpiCommand
General rule: Suffixes*&CommandParameters*&QueryResultParameters*&QueryParameters*&Examples
Attribute list
Name: ClassName String Optional
Name: ClassLongName String Optional
Name: ClassDescription String Optional
Name: String String Optional
Name: Overlapping String Optional
Name: Lockable String Optional
Name: Type String Optional
Text format rules
If context is: [Attribute=”String”]
Use paragraph format: SCPICommand
If context is: [Attribute=”ClassDescription”]
Use paragraph format: Indented
Prefix rules
In all contexts.
Prefix: <$attribute[String]><$attribute[ClassDescription]>
Here is what I am getting out (in FM body):
SYSTem:LAUNch:TYPESets the launch setup type. Outputs the launch setup type.
LaunchSetupTypeEnumLaunch setup type to be set
LaunchSetupTypeEnumLaunch setup type to be read
Example: SYST:LAUN:TYPE LASTSets the launch setup type to Last.
Example: SYST:LAUN:TYPE?Outputs the launch setup type.
So I need to figure out how to get the formatting to work. It seems I can sometimes pick to use a para format, but the attributes do not allow different paragraphs for different attributes in the same element. I've tried the formatting as shown here and also in the Prefix/Suffix rules.
Or character format everything and figure out how to add line breaks between certain attributes or characters around them. Also, the <Parameter> attribute Enum="LaunchSetup" should pull information from the correct <Enum> element rather than use the value of the attribute there.
<ScpiEnums>
<EnumList Name="LaunchSetup">
<Enum Name="Default" Value="DEF" LongValue="DEFAULT" />
<Enum Name="Last" Value="LAST" LongValue="LAST" />
<Enum Name="Saved" Value="SAV" LongValue="SAVED" />
</EnumList>
</ScpiEnums>
Maybe something like below would be presentable. The second command query form must be generated when the <ScpiCommand> attribute Type="Both"; otherwise we print just the command or query if there are not complemenatry forms.
SYSTem:LAUNch:TYPE
Sets the launch setup type.
SYSTem:LAUNch:TYPE?
Outputs the launch setup type.
Parameter Type: Enum
Parameters: DEF, LAST, SAV (DEFAULT, LAST, SAVED)
Example: SYST:LAUN:TYPE LAST
Sets the launch setup type to Last.
Example: SYST:LAUN:TYPE?
Outputs the launch setup type.
Finally, I'm stuck with creating the DTD. I follow the instructions here to make the EDD and then the next section is to create the DTD, but FrameMaker complains there is not structured App. This feels like a chicken and egg issue.
https://help.adobe.com/en_US/framemaker/using/index.html#t=using-framemaker%2Fuser-guide%2FWS37D3BBAC-A1FA-4fe3-9217-84364402A9D9_ver12.0.html
On this page, Step 2? Why are we doing that? Isn't that already done?
Step 5 presents a dialog that says "myapplication" does not exist, but also to reset the application name or define a new one... Where how is that described?
Oh, I had a wild crazy idea, when setting the structured app, rather than picking one from the list, go black-hat rogue and randomly type something in. Who'd a thought? Oh, that doesn't work either.
What's next? Define this app in structapps.fm and just fill in the non-existant dtd file name and try again? Even doing that FM says my app does not exist. Seems I need a DTD to make an app, but I need an app to make a DTD.
Sorry I'm rambling now.
C2
Adobe FrameMaker<https://help.adobe.com/en_US/framemaker/using/index.html#t=using-framemaker%2Fuser-guide%2Fid149PEI00MGB.html>
The complete Adobe FrameMaker (2020 release) Online User Guide (Online Help)
help.adobe.com
More information about the Framers
mailing list