Talend Component for Creating XSD from a XML File - talend

I have a XML file with me with Data in the file.
I am Looking for a Component in Talend which can create a XSD file for me from the XML input.
There are online Utility to do it (freeformatter.com/xsd-generator), however is there a component in Talend ?

In Talend , no xsdoutput .
If what you need is a scheme , you can play and get the XML schema with METADATA.
XML and XSD are usually supplemented in the same file .
Once done, you can use the XSD generation or Oxygen.

We can try tAdvancedOutputXML component of talend.
Here we can use following advanced setting
Advanced setting >> Create associated XSD file.
or
Here you can have the details about component
"https://help.talend.com/display/TalendOpenStudioComponentsReferenceGuide521EN/22.1+tAdvancedFileOutputXML"

Related

Where is Project Open Data data.xml format defined

I would like to convert a dataset into Project Open Data data.xml format so that I can ingest in via the DKAN harvester. I know there is data.json format but prefer to use data.xml as the data is already XML and I am comfortable transforming it.
I can't seem to find where the data.xml schema/format is defined and would be grateful for pointers.
The data.json file is created by implementing the Open Data Schema Map module in DKAN.
You have a couple of options:
Create a new endpoint at "/admin/config/services/odsm/add/api" and use XML as the output format and "Project Open Data v1.1" as the schema:
You can do the same thing in code using hook hook_open_data_schema_apis_defaults() that Open Data Schema Map DKAN uses. Copy the declaration for "data_json" in your own module and change the endpoint to "'endpoint' => 'data.xml'," and the format to xml.
You could use hook_open_data_schema_map_results_alter to alter the schema to use "data.xml" and format to XML in a custom module.

How to make a section optional when mapped to optional data in a Word OpenXml Part?

I'm using OpenXml SDK to generate word 2013 files. I'm running on a server (part of a server solution), so automation is not an option.
Basically I have an xml file that is output from a backend system. Here's a very simplified example:
<my:Data
xmlns:my="https://schemas.mycorp.com">
<my:Customer>
<my:Details>
<my:Name>Customer Template</my:Name>
</my:Details>
<my:Orders>
<my:Count>2</my:Count>
<my:OrderList>
<my:Order>
<my:Id>1</my:Id>
<my:Date>19/04/2017 10:16:04</my:Date>
</my:Order>
<my:Order>
<my:Id>2</my:Id>
<my:Date>20/04/2017 10:16:04</my:Date>
</my:Order>
</my:OrderList>
</my:Orders>
</my:Customer>
</my:Data>
Then I use Word's Xml Mapping pane to map this data to content control:
I simply duplicate the word file, and write new Xml data when generating new files.
This is working as expected. When I update the xml part, it reflects the data from my backend.
Thought, there's a case that does not works. If a customer has no order, the template content is kept in the document. The xml data is :
<my:Data
xmlns:my="https://schemas.mycorp.com">
<my:Customer>
<my:Details>
<my:Name>Some customer</my:Name>
</my:Details>
<my:Orders>
<my:Count>0</my:Count>
<my:OrderList>
</my:OrderList>
</my:Orders>
</my:Customer>
</my:Data>
(see the empty order list).
In Word, the xml pane reflects the correct data (meaning no Order node):
But as you can see, the template content is still here.
Basically, I'd like to hide the order list when there's no order (or at least an empty table).
How can I do that?
PS: If it can help, I uploaded the word and xml files, and a small PowerShell script that injects the data : repro.zip
Thanks for sharing your files so we can better help you.
I had a difficult time trying to solve your problem with your existing Word Content Controls, XML files and the PowerShell script that added the XML to the Word document. I found what seemed to be Microsoft's VSTO example solution to your problem, but I couldn't get this to work cleanly.
I was however able to write a simple C# console application that generates a Word file based on your XML data. The OpenXML code to generate the Word file was generated code from the Open XML Productivity Tool. I then added some logic to read your XML file and generate the second table rows dynamically depending on how many orders there are in the data. I have uploaded the code for you to use if you are interested in this solution. Note: The xml data file should be in c:\temp and the generated word files will be in c:\temp also.
Another added bonus to this solution is if you were to add all of the customer data into one XML file, the application will create separate word files in your temp directory like so:
customer_<name1>.docx
customer_<name2>.docx
customer_<name3>.docx
etc.
Here is the document generated from the first xml file
Here is the document generated from the second xml file with the empty row
Hope this helps.

Write XLSX file - Oracle forms

i am trying to create xlsx file based on block data in oracle forms.
Is it possible to generate xlsx using webutil(Text_io) or by using java beans?
any sample please share me.
thanks
V
In my opinion and experience it is best using UTL_File to generate text file then open it with Excel. You can use Text_IO also. If I find the example I will post it.

How to Import the xml file into out of Box Repository In ATG other than using StartSQLRepository

How can we Import the xml file into out of Box Repository In ATG other than using StartSQLRepository , is there any way of importing the xml file in to the data base ,
If the file isn't too large, a common way to do it is to paste it into the repository component in dynamo administration. All repositories in ATG will have this option in dyn/admin just for this task.
If that doesn't fit your needs, you can write a class calling atg.repository.xml.AddService.addItem(). From the manual:
You use the addItem() method of the atg.repository.xml.AddService class to create new repository items from XML documents.
See http://docs.oracle.com/cd/E24152_01/Platform.10-1/ATGWSFrameGuide/html/s0603addingrepositoryitems01.html and http://docs.oracle.com/cd/E24152_01/Platform.10-1/ATGRepositoryGuide/html/s1202addingitems01.html
goto dyn/admin/--/atg/comm/catalog.productCatalog/ -- eg
find the property select. -definition file
use xmlfile("path/to/file); -- in that text box area
u will get the error msg whn the ATG cannot find the file.
Error msg give the idea where ATG is expecting the file to be
--some config folders.
/ Anilal

can open xml sdk be used in creating xml files?

is it possible to use the OPEN XML SDK and generate an xml file that contains some metadata of a particular docx file?
details: i have a docx file, from which i want to extract some metadata(using open xml) and display them as xml file and later use Jquery to present them in a more readable form.
You can use the SDK to extract info from the various properties parts which may be present in the docx (for example, the core properties part, which included dublin core type info).
You can extract it in its native XML form:
<cp:coreProperties
xmlns:cp="http://schemas.openxmlformats.org/package/2006/metadata/core- properties"
xmlns:dc="http://purl.org/dc/elements/1.1/" .. >
<dc:creator>Joe</dc:creator>
<cp:lastModifiedBy>Joe</cp:lastModifiedBy>
<cp:revision>1</cp:revision>
<dcterms:created xsi:type="dcterms:W3CDTF">2010-11-10T00:32:00Z</dcterms:created>
<dcterms:modified xsi:type="dcterms:W3CDTF">2010-11-10T00:33:00Z</dcterms:modified>
</cp:coreProperties>
or, in some other XML dialect of your own choosing.
I know question was posted a long time ago, but first result of google search sent me here. So if there are others looking for a solution to this, there is a snippet on MSDN website https://msdn.microsoft.com/en-us/library/office/cc489219.aspx
short answer is... using XmlTextWritter, and it applies to Office 2013 afaik:
// Add the CoreFilePropertiesPart part in the new word processing document.
var coreFilePropPart = wordDoc.AddCoreFilePropertiesPart();
using (XmlTextWriter writer = new XmlTextWriter(coreFilePropPart.GetStream(FileMode.Create), System.Text.Encoding.UTF8))
{
writer.WriteRaw("<?xml version=\"1.0\" encoding=\"UTF-8\"?>\r\n<cp:coreProperties xmlns:cp=\"http://schemas.openxmlformats.org/package/2006/metadata/core-properties\"></cp:coreProperties>");
writer.Flush();
}