reltable is not working with dita open tool kit 3.0 - dita

I have created the file below. But it is giving me an error in dita open tool kit version 3.0.
{?xml version="1.0" encoding="UTF-8"?}
{!DOCTYPE map PUBLIC "-//OASIS//DTD DITA Map//EN" "map.dtd"}
{map id="ducks"}
{title}Ducks{/title}
{reltable}
{relheader}
{relcolspec type="concept"/}
{relcolspec type="task"/}
{relcolspec type="reference"/}
{/relheader}
{relrow}
{relcell}{topicref href="c.dita"/}{/relcell}
{relcell}{topicref href="t.dita"/}{/relcell}
{relcell}{topicref href="r.dita"/}{/relcell}
{/relrow}
{/reltable}
{/map}
The files c.dita (concept), t.dita (task) or r.dita (reference) are available.
Regards
Deepak Bhatia

Is this the full map? If so, then the problem is you are missing the structure that generates the output. Add topicref elements to build the content sand it should work.

Related

How to read html files on Vapor with Leaf when not using the tau version?

There was a version of Leaf that I was using to load .html files instead of .leaf ones from my Vapor project, which would make syntax coloring for those same files done automatically.
The version of Leaf was 4.0.0-tau.1 and the one for LeafKit was 1.0.0-tau.1.1
When using this particular version, I could setup leaf in the configure.swift file this way:
/// Change the classic .leaf extension to .html for the syntax
/// coloring option of Xcode to work each time the app is being load up.
fileprivate func leaf(_ app: Application) {
if !app.environment.isRelease {
LeafRenderer.Option.caching = .bypass // Another issue from the update
}
let detected = LeafEngine.rootDirectory ?? app.directory.viewsDirectory
LeafEngine.rootDirectory = detected
LeafEngine.sources = .singleSource(
NIOLeafFiles(fileio: app.fileio,
limits: .default,
sandboxDirectory: detected,
viewDirectory: detected,
defaultExtension: "html"))
app.views.use(.leaf)
}
In this code, the LeafRenderer.Option.caching = .bypass and the code used with LeafEngine do not work anymore since having updated Leaf to 4.1.3 and LeafKit to 1.3.1.
How can I successfully make this code work as before with the updated Leaf and LeafKit frameworks?
You can use this Xcode plugin:
https://github.com/OmranK/VaporLeafPlugIn
It adds Vapor Leaf language support to Xcode IDE. Provides syntax highlighting for Leaf tags as well as HTML tags with auto-indentation all together.
At the moment the plugin supports Xcode up to 13.2 beta. Future Xcode versions will require small update (add new DVTPlugInCompatibilityUUID) but it can be easily handled even on already installed plugin.

How to use getHeaderContribution() in wicket 6.x or 7.x?

I have code like below,
add(CssPackageResource.getHeaderContribution("css/$/styles.css?v=1.1".replace("$", reqLocale)));
I am trying to upgrade it into 6.x , but am unable to use getHeaderContribution() method,
Can you suggest me how can I change above code?
You can override renderHead(IHeaderResponse response) of your page/component and insert the following code there:
response.render(CssHeaderItem.forReference(new CssResourceReference(YourWebPage.class, String.format("css/%s/styles.css?v=1.1", reqLocale))));
The css file path should then be relative to YourWebPage.
Detailed migration path can be found here in the Wiki pages.
Step 1:
https://cwiki.apache.org/confluence/display/WICKET/Migration+to+Wicket+1.5#MigrationtoWicket1.5-HeaderContribution
Step 2:
https://cwiki.apache.org/confluence/display/WICKET/Migration+to+Wicket+6.0#MigrationtoWicket6.0-IHeaderResponse,includingdecoratorsandfilters

Copy a folder with Smartsheet API - Java SDK 2.0.5

I am trying to copy a folder with the Smartsheet API 2.0 (Java SDK 2.0.5).
Unfortunately the folders and sheets (all sub folders/sheets too) are copied but the sheet data is missing.
I get no errors everything works fine.
I tried several variants of the optional include parameters the ".ALL", "null", ...
This is the example code and the used environment:
Netbeans IDE 8.2
smartsheet-sdk-java-2.0.5.jar (with maven)
// Optional params
EnumSet includes = EnumSet.complementOf(EnumSet.of(FolderCopyInclusion.ALL)); // Copy all fields!
EnumSet skipRemap = EnumSet.noneOf(FolderRemapExclusion.class); // Remap all fields
// Specify destination.
ContainerDestination destination = new ContainerDestination.AddContainerDestinationBuilder()
.setDestinationType(DestinationType.FOLDER)
.setDestinationId(targetFolder.getId())
.setNewName(folder.getName())
.build();
smartsheet.folderResources().copyFolder(folder.getId(), destination, includes, skipRemap);
What am i doing wrong? Thanks a lot for your help.
Perhaps try changing this line:
EnumSet includes = EnumSet.complementOf(EnumSet.of(FolderCopyInclusion.ALL)); // Copy all fields!
To this instead:
EnumSet includes = EnumSet.of(FolderCopyInclusion.ALL);
(I'm not a Java expert, but the change I've suggested is consistent with the code example in the Smartsheet API Documentation.)

Loading an XMI representation for MOF into EMF

I'm working with Enterprise Architect. There it's possible to export your model as MOF 1.4/XMI 1.2 into a file.
<?xml version="1.0" encoding="windows-1252"?>
<XMI xmi.version="1.2" xmlns:Model="org.omg.xmi.namespace.Model" timestamp="2012-03-19 16:16:33">
<XMI.header>
<XMI.documentation>
<XMI.exporter>Enterprise Architect</XMI.exporter>
<XMI.exporterVersion>5.1</XMI.exporterVersion>
</XMI.documentation>
<XMI.metamodel xmi.name="org.omg.mof.Model" xmi.version="1.4"/>
</XMI.header>
<XMI.content>
<Model:Package name="MofModel" xmi.id="EAPK_E660ED7D_A77D_4721_B26B_E43EA754C0F1" isRoot="true" isLeaf="false" isAbstract="false" visibility="public_vis">
<Model:Namespace.contents>
<Model:Class name="Class2" xmi.id="EAID_425DBFFA_432F_4a43_B12B_DEF05643C5A3" isRoot="false" isLeaf="false" isAbstract="false" isSingleton="false" visibility="public_vis">
<Model:GeneralizableElement.supertypes>
<Model:Class xmi.idref="EAID_E6FA2BB0_D81C_4b6c_86EF_9781887F5C26"/>
</Model:GeneralizableElement.supertypes>
</Model:Class>
<Model:Package name="Package1" xmi.id="EAPK_F9D099B3_F646_4ca1_93CE_CBE09014C651" isRoot="true" isLeaf="false" isAbstract="false" visibility="public_vis">
<Model:Namespace.contents>
<Model:Class name="Class1" xmi.id="EAID_E6FA2BB0_D81C_4b6c_86EF_9781887F5C26" isRoot="false" isLeaf="false" isAbstract="false" isSingleton="false" visibility="public_vis"/>
</Model:Namespace.contents>
</Model:Package>
</Model:Namespace.contents>
</Model:Package>
</XMI.content>
<XMI.extensions xmi.extender="Enterprise Architect 2.5"/>
After having this done, i want to load it in eclipse emf.
Until now, i found no possibility to do this.
Emf supports the XMI 2.0 standard (not 1.2).
Is there something to convert to this version or something?
You can tell EA to export in a wide range of XMI versions and other formats.
In the export dialog, click the Publish button and you should see a list with some dozen different XMI options.

EventLogInstaller Full Setup with Categories?

It appears the MSDN docs are broken concerning creating an Event Log completely along with a definitions file for messages. I am also lost on how to setup Categories (I have custom numbers in the 3000's for messages).
Can anyone point me to a link or show sample code on how to make this right?
You should start (if you haven't done so already) here:
EventLogInstaller Class (System.Diagnostics)
The sample provided there is the foundation for what you want to do. To sum it up, build a public class inheriting from System.Configuration.Install.Installer in an assembly (could be the same DLL where you have the rest of your application, a separate DLL, or an EXE file), decorate it with the RunInstaller attribute, and add your setup code in the constructor:
using System;
using System.Configuration.Install;
using System.Diagnostics;
using System.ComponentModel;
[RunInstaller(true)]
public class MyEventLogInstaller: Installer
{
private EventLogInstaller myEventLogInstaller;
public MyEventLogInstaller()
{
// Create an instance of an EventLogInstaller.
myEventLogInstaller = new EventLogInstaller();
// Set the source name of the event log.
myEventLogInstaller.Source = "NewLogSource";
// Set the event log that the source writes entries to.
myEventLogInstaller.Log = "MyNewLog";
// Add myEventLogInstaller to the Installer collection.
Installers.Add(myEventLogInstaller);
}
}
When you have your assembly compiled, you may use the InstallUtil tool available through the Visual Studio Command Prompt to run the installer code.
Regarding the message definition file (which includes category definitions), the MSDN documentation for EventLogInstaller.MessageResourceFile mentions that you should create an .mc file, compile it, and add it as a resource to your assembly. Digging around, I found an excellent post which should guide you to the end, here:
C# with .NET - Event Logging (Wayback Machine)