Write XML attribute
Hello
I would like to change the value of an attribute in an XML tag.
I can read the value but not the modifier... any idea?
S example code PJ.
Thank you in advance
Kind regards
Alexander
Hello alex,.
Have you tried the examples available on our site here and here ?
Kind regards
Tags: NI Software
Similar Questions
-
Set XML attributes to multiply items
Hello world
This is my situation. I have a document with multiple pages and multiple objects on each page.
now, I want to get the coordinates and dimensions of an object and write the data as an XML attribute.
The script should do this for each object in my document.
That's what I got so far:
function creatAtt() {}
for (var i = 0; i < app.selection.length; i ++) {}
var myObject = app.selection [i];
var myXMLobject = myObject.associatedXMLElement;
var ycoords = myObject.geometricBounds [0];
var xcoords = myObject.geometricBounds [1];
var width = myObject.geometricBounds [3] - myObject.geometricBounds [1];
var height = myObject.geometricBounds [2] - myObject.geometricBounds [0];
myXMLobject.xmlAttributes.add ("Y-coordinate", ycoords.toString () + "px");
myXMLobject.xmlAttributes.add ("X-coordinate", xcoords.toString () + "px");
myXMLobject.xmlAttributes.add ("Width", width.toString () + "px");
myXMLobject.xmlAttributes.add ('Height', height.toString () + "px");
}
}
creatAtt();
When I select an object and run the script he writes only the data for the selected object, not for all objects. Someone a tip how to fix?
Hi Sebbomatico,
Now, I remove the attributes at the beginning and after I generated. Please check this code and the snapshot.
var myDoc= app.activeDocument; var myPages = myDoc.pages; for (var i = 0; i < myPages.length; i++){ var myActualPage = myPages[i].pageItems; for (var j = 0; j < myActualPage.length; j++){ var myObject= myActualPage[j]; var myXMLobject = myObject.associatedXMLElement; var ycoords= myObject.geometricBounds[0]; var xcoords= myObject.geometricBounds[1]; var width = myObject.geometricBounds[3] - myObject.geometricBounds[1]; var height = myObject.geometricBounds[2] - myObject.geometricBounds[0]; try{myXMLobject.xmlAttributes.everyItem().remove();}catch(e){}; myXMLobject.xmlAttributes.add ("Y-Koordinate", ycoords.toString() + " px"); myXMLobject.xmlAttributes.add ("X-Koordinate", xcoords.toString() + " px"); myXMLobject.xmlAttributes.add ("Width", width.toString() + " px"); myXMLobject.xmlAttributes.add ("Height", height.toString() + " px"); } }
-
Enforcement of XML attribute with a structure?
I use xmlParse() to read an XML file into a structure and then deal with the structure (replace some of the XML attributes) and then write structure back as an XML file. The problem is that I lost the original order of the XML attributes when I convert a structure and instead end up with a new attribute for each element that is alphabetical order.
In other: c = 'text' d = 'text' element has = "text" / >
be rewritten in the form: element = 'text' c = 'text' d = "text" / >
which is a problem for this application.
Is it possible to work with XML in CF but keep ordering attribute (LinkedHashMap instead of a structure, perhaps)?
Thank you.
Walter
If you need to control the order of the attributes, you must write your xml code on hand, according to the XML specification, ordering attribute must not be important, so strictly speaking your condition here requires something XML which is contrary to his intention. And, therefore, has no way of making CF respect something that inherently isn't supposed to be respected.
NB: "I use xmlParse() to read an XML file in a structure"... xmlParse() creates an XML object, not a struct, so what you ask in your last paragraph doesn't really sense. xmlParse() will only create an XML object. If you want to read the XML data as something else than XML, you need to write your own function.
The best solution here, if poss, is to remove the importance of the order attribute in your application, because it is "wrong" to deduct any order, and you do a little logic a rod for your own back based on this ranking.
Not an answer 'just do it like this', I'm sorry, but that's what you get when the question is immersed in a Pandora's box... ;-)
--
Adam -
How to normalize/linearize whitspace in XML attributes?
Hello
I have data in a CLOB column I need to appeal to an XML attribute. The data may contain CR, LF and tabs - that the XML must be preserve way standardized/linearized (that is to say using & #10; & #13; etc.)
I tried using XMLROOT - it deletes the line a total break.
I tried to use XMLSERIALIZE - when finished with clause VERSION it also suppresses the newline, when without the VERSION, it keeps the jump line but not standardized.
Do not use these preserves the jump line - but not standardized.
Is there a bed in order to standardize XML - or should I use replace nested?
Examples below.
Thanks in advance.
SQL> set long 20000 SQL> set lines 1000 SQL> set pages 1000 SQL> select * from v$version BANNER -------------------------------------------------------------------------------- Oracle Database 11g Enterprise Edition Release 11.2.0.3.0 - 64bit Production PL/SQL Release 11.2.0.3.0 - Production CORE 11.2.0.3.0 Production TNS for Linux: Version 11.2.0.3.0 - Production NLSRTL Version 11.2.0.3.0 - Production 5 rows selected. SQL> -- as XMLTYPE, newline (chr(10)) is preserved, but not normalized SQL> select XMLELEMENT("A", XMLATTRIBUTES(1 as ID, 2 ||chr(10)||3 as "TXT") ) from dual XMLELEMENT("A",XMLATTRIBUTES(1ASID,2||CHR(10)||3AS"TXT")) --------------------------------------------------------- <A ID="1" TXT="2 3"></A> 1 row selected. SQL> -- as CLOB, newline (chr(10)) is preserved, but not normalized SQL> select XMLELEMENT("A", XMLATTRIBUTES(1 as ID, 2 ||chr(10)||3 as "TXT") ).getclobval() from dual XMLELEMENT("A",XMLATTRIBUTES(1ASID,2||CHR(10)||3AS"TXT")).GETCLOBVAL() ---------------------------------------------------------------------- <A ID="1" TXT="2 3"></A> 1 row selected. SQL> -- with XMLROOT - newline is removed SQL> select XMLROOT( XMLELEMENT("A", XMLATTRIBUTES(1 as ID, 2 ||chr(10)||3 as "TXT") ), VERSION '1.0') from dual XMLROOT(XMLELEMENT("A",XMLATTRIBUTES(1ASID,2||CHR(10)||3AS"TXT")),VERSION'1.0') ------------------------------------------------------------------------------- <?xml version="1.0"?> <A ID="1" TXT="2 3"/> 1 row selected. SQL> --with XMLSERIALIZE without VERSION clause - newline is preserved but not normalized SQL> select XMLSERIALIZE(DOCUMENT XMLELEMENT("A", XMLATTRIBUTES(1 as ID, 2 ||chr(10)||3 as "TXT") ) ) from dual XMLSERIALIZE(DOCUMENTXMLELEMENT("A",XMLATTRIBUTES(1ASID,2||CHR(10)||3AS"TXT"))) ------------------------------------------------------------------------------- <A ID="1" TXT="2 3"></A> 1 row selected. SQL> --with XMLSERIALIZE with VERSION clause - newline is removed SQL> select XMLSERIALIZE(DOCUMENT XMLELEMENT("A", XMLATTRIBUTES(1 as ID, 2 ||chr(10)||3 as "TXT") ) VERSION '1.0') from dual XMLSERIALIZE(DOCUMENTXMLELEMENT("A",XMLATTRIBUTES(1ASID,2||CHR(10)||3AS"TXT"))VERSION'1.0') ------------------------------------------------------------------------------------------- <A ID="1" TXT="2 3"/> 1 row selected. SQL> --doing replace works, but seems "un-natural" and very inefficient SQL> select replace( XMLELEMENT("A", XMLATTRIBUTES(1 as ID, 2 ||chr(10)||3 as "TXT") ), chr(10),' ') from dual REPLACE(XMLELEMENT("A",XMLATTRIBUTES(1ASID,2||CHR(10)||3AS"TXT")),CHR(10),' ') ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- <A ID="1" TXT="2 3"></A> 1 row selected.
Question still pending, if anyone has another way - or knows for sure replace is the only option.
Replaces nesting calls is probably the only option, of course, but not the way you have tried in your examples.
Do replace it at an earlier stage, directly on the data source.
Here's how I'd do:
SQL> set define off SQL> SQL> SQL> select xmlserialize(document 2 xmlelement("A", 3 xmlattributes(noentityescaping 4 1 as id 5 , replace( 6 dbms_xmlgen.convert('X'||chr(10)||'Y') 7 , chr(10) 8 , ' ' 9 ) as txt 10 ) 11 ) 12 no indent 13 ) 14 from dual ; XMLSERIALIZE(DOCUMENTXMLELEMEN --------------------------------------------------------------------------------
1. use DBMS_XMLGEN. CONVERT to handle reserved characters.
2-using REPLACE to manage a specific entity escape
Option NOENTITYESCAPING 3 - use to keep the entity references comes to be presented
-
ESD context-setting shaped based on XML attributes
Hi all
I have some difficulty to get my EDD to format correctly based on the XML attributes. Basically, what I would like is:
I have a few XML:
< root >
< elem > example text sample text sample text sample text. < / elem >
< elem multi = "true" > example text example text example text sample text. < / elem >
< / root >
For items with the multi = 'true' attribute, I want to be prefixed by a ball and with a left indent of 0.14"in order to align the text with the ball.
• Example text sample text
example text sample text.
Those without the attribute are simply formatted according to the paragraph format (no prefix, 0.0 left indent ")
Example text sample text
example text sample text.
My EDD looks like this:
(Container) element: elem
General rule: < ANY >
List of attributes
Name: multi String
Rules of prefix
If the context is: [multi = 'true']
Prefix: •
Text format rules
Paragraph element format: element
If the context is: [multi = 'true']
Basic properties
Dashes
Withdrawal left: 0.14 "
After importing my XML, the prefix part works perfectly. No problem.
However, the left based on the context does not work at all - all items inherit only the removal of paragraph (0.0 "). So it ends up looking like this:
• Example text sample text
example text sample text.
I can't understand this. No formatting in ESD does not replace the formats specified paragraph or something?
Any help would be greatly appreciated.
Thank you
CarlPlease do not take into account the incomplete answer, it seems to me having posted. What I started to say is:
Carl,
Format of the item rules override formatting that it inherits from its parent, as well as modalities parentElement must not interfere with those that you specify for prim.
I don't see the problem, and without actually opening the file in FM, it is difficult for me to guess what might be wrong. A number of things that I do are:
(1) set another property in the
rule, for example, to set the font size to 70pt and changes the left indent. A change in font size will confirm that the rule was actually fired. (2) inspect the left indent in paragraph Designer. Maybe you have set it to 0.14pt instead of 0.14 to?
-Lynne
-
I need to replace the 'M05_LEMO9433_06_SE_CH05' to M05_LEMO5401_06_SE_CH05 xml attribute value
In the document with more than thousand entries
I used the following code but it does not work
function AddReturns() {}
myIdName = "AddReturns";
This.XPath = "//p//span//a";
This.Apply = function (myElement, myRuleProcessor) {}
with (MyElement)
{
try {}
If (myElement.xmlAttributes.item("href").value.match ("LEMO9433"))
{
Fig var = myElement.xmlAttributes.itemByName("href").value;
var fig.replace = figv ("9433', 'O5401')
myElement.xmlAttributes.itemByName("href").value = figv;
}
myElement.xmlAttributes.item("id").name = "olinkend";
} catch (e) {}
}
Returns true;
}
}
Try this:
var main = function() { var root, xes, n, ov = "M05_LEMO9433_06_SE_CH05", nv = "M05_LEMO5401_06_SE_CH05"; if ( !app.documents.length ) return; root = app.activeDocument.xmlElements[0]; xes = root.evaluateXPathExpression ("//*[@*='"+ov+"']" ); n = xes.length; while ( n-- ) { changeAttributeValue ( xes[n], ov, nv ); } } var changeAttributeValue = function ( xe, oldValue, newValue ) { var xas = xe.xmlAttributes, xa, n = xas.length; while ( n-- ) { xa = xas[n]; xa.value == oldValue && xa.value = newValue; } } main();
-
How to handle xml attributes?
Hallo,
I am new to Livecycle and I have some difficulties to understand how reading/identification of the attributes XML in LiveCycle Designer.
If I drag-and - drop items (#data of display data), they appear without problems. But if I drag an attribute (@attributename) they always show the empty to the PDF.
For example, I have an XML file that looks like this:
< product >
....
< price >
< ParamPrice visible = "true" >
< prixUn visible = "false" > 1.350,00 < / prixUn >
< priceB visible = "true" > 1.350,00 < / priceB >
< price visible = "true" > 20.00 < / price >
< price visible = "false" > 0,00 < / price >
< / if >
< NouveauPrix visible = "true" >
< prixUn visible = "false" > 1.350,00 < / prixUn >
< priceB visible = "true" > 1.350,00 < / priceB >
< price visible = "true" > 20.00 < / price >
< price visible = "false" > 0,00 < / price >
< / sonderpreise >
< / price >
...
< / product >
I tried to link like this: price.oldprice. (visible.value == "true") .priceA, but it does not work.
I can´t really find some good information about the manipulation of XML attribute in LiveCycle. Can you please help me or tell me where to find more information on this topic.
Thank you!!!
What about Kat
It is not the relationship between the presence of the object property and your visible attribute to date.
But you can use a script to create such a thing.
Put this in the event layout: ready for a text field, you want to be hidden or shown depending on the value of the visible attributes.
this.presence = this.dataNode.visible.value === "true" ? "visible" : "hidden";
-
How to remove the value of the XML attribute in the Indesign file with javascript
Hi all
How to remove the value of the XML attribute in the Indesign file.
What error is this?
in any case try this as well (one another),
var myDoc = app.activeDocument; attrDelete(myDoc); function attrDelete(elm) { for (var i = 0; i < elm.xmlElements.length; i++) { try{ for(j=0; j
Vandy
-
Can someone please tell me the "see correct / more effective to get the 'status' XML ' attributes (ID, CssClass, Description and IsActive to the XML code below):
Implementation will be the standalone .swf file
(XML)
<ArrayOfLineStatus>
<LineStatus ID="0" StatusDetails="">
<BranchDisruptions/><Line ID="1" Name="Bakerloo"/>
<Status ID="GS" CssClass="GoodService" Description="Good Service" IsActive="true">
<StatusType ID="1" Description="Line"/></Status></LineStatus>
</ArrayOfLineStatus>< ArrayOfLineStatus >
< LineStatus ID = "0" StatusDetails = "" >
< BranchDisruptions / >
< line ID = "1" Name = "Bakerloo" / >
< State ID = 'GS' CssClass = "GoodService" Description = "Good Service" IsActive = "true" >
< StatusType ID = '1' Description = 'Line' / > < / status >
< / LineStatus >
< / ArrayOfLineStatus >
There is no good way with as2:
trace(this.firstChild.childNodes[1].childNodes[4].) Attributes ['ID']);
trace(this.firstChild.childNodes[1].childNodes[4].) Attributes ['CssClass']);
etc.
-
POOR RECOVERY OF THE XML ATTRIBUTE VALUES
Hi all
I searched this forum and the web a way to get the value of an xml attribute. The solutions I found always had a problem, the values returned when concatenated without any separators, so I can't know every value.
Here's how:
BEGIN
l_bfile: = BFILENAME ('CTEMP1', nome_fich);
DBMS_LOB. FileOpen (l_bfile);
DBMS_LOB. LoadFromFile (l_clob, l_bfile, DBMS_LOB.lobmaxsize);
DBMS_LOB. FileClose (l_bfile);
xmlx: = XMLTYPE (l_clob);
Str: = xmlx. Extract('rowset/Row/@id'). GETSTRINGVAL();
dbms_output.put_line (' :'|| id values) (STR);
END;
Returns the string str: 123456654321 for this example
<? XML version = "1.0" encoding = "UTF-8"? >
rowset <>
< row id = "123456" >
< name > Peter < / name >
< / row >
< row id '654321' = >
< name > Louis < / name >
< / row >
< / lines >
I want to get each id concatenated for example values (123456:654321) instead, I get the concatenated values (123456654321).
Does anyone know a work around for this problem?
Cordially Pedro.11.2 you can use listagg()
SQL> with t as (select xmltype('
2 ') xcol from dual) 9 select listagg(v.val,':') within group (order by null) val 10 from t,xmltable('/rowset/row/@id' 11 passing t.xcol 12 columns val varchar2(1000) path '.') v; VAL ------------------------------------------------------------------------------------------------------------------------ 123456:6543213
5Peter 46
8Louis 7If not 11.2
SQL> with t as (select xmltype('
2 ') xcol from dual) 9 select xmlquery('fn:string-join(/rowset/row/@id,'':'')' 10 passing by value t.xcol returning content) val 11 from t; VAL ------------------------------------------------------------------------------------------------------------------------ 123456:6543213
5Peter 46
8Louis 7 -
With the help of the XML attributes in itemRenderer and labelFunction
Hello!
I searched for hours and read the Devguide but always impossible to find the solution to my problem.
I have a xml returned from php like this:
< files >
< record id = "1" name = "name_1" type = "0" / >
< record id = "2" name = "name_2" type = "0" / >
< record id = "3" name = "name_3" type = "1 / >"
< / documents >
I can bind the result returned from the HTTPService to a data grid:
< mx:DataGrid dataProvider = "{ret_XML.record}" width = "500" number of rows = "20" editable = "false" id = "dg" > "
< mx:columns >
<!-NEXT WORK! ->
"< mx:DataGridColumn headerText ="Name" dataField="@name " width ="300"/ >
<!- LABELFUNC don't DO NOT WORK IN LINE NEXT->
"< headerText ="Type"dataField="@type mx:DataGridColumn " labelFunction ="labelFunc">
< / mx:DataGridColumn >
"< headerText ="Id"mx:DataGridColumn dataField="@id " editable ="false">
< mx:itemRenderer >
< mx:Component >
<!-LINE FOLLOWING IS don't DO NOT WORK! ->
"{< mx:Button label="{data.@id} '/ >
< / mx:Component >
< / mx:itemRenderer >
< / mx:DataGridColumn >
< / mx:columns >
< / mx:DataGrid >
and I have a labelFunction like this:
private void labelFunc(item:Object,_column:DataGridColumn):String {}
return "Type:"+ item.@type; "
}
So, my problem is that when I bind the column to an XML attribute, it works fine but when I try to link it to an itemRenderer or use it in a function, it does not work. I'm trying for hours now, but just can't make it work.
I tried:
"{< mx:Button label="{data.@id} '/ >
< mx:Button label = "{data. () @id)} »/ >
"{< mx:Button label="{@data.id} '/ >
and perhaps others but no luck...
Please someone help me with this one!
Ty:
[Pig]Problem solved!
Well, post it on the forum after I solved my problem as follows:
So in itemRenderer just use data.attribute () with the desired XML attribute name
And in the labelFunction:
private void labelFunc(item:Object,_column:DataGridColumn):String {}
return "Type:"+ item.attribute ('type'); '.
}
Even with itemRenderer but rather data use () item.attributeI hope that this is the 'official' solution too...
[Pig]
-
Check writer (XML) blank PDF creation
I work on the writer check (XML), when I run the same process with the seeded model it produces a blank PDF file. I see in the log file of the assignments are to be ignored and is not transformed. However, the normal audit program writer delivers a power. Did I miss something in the setup steps to check writer (XML)? Any help is greatly appreciated.
Thanks in advance
SharmilaOK, you as a display in a browser? Try it in Notepad or write that you should be able to see beyond the error. This usually happens if there is an illegal character or escape sequence in the extract for example & should be &, etc.
the problem is with the check writer, editor trying to publish what is launched on it. If data aren't there or it is corrupt, then nothing will show. You must consult the CheckWrite program, see if there are patches for it or known issues. If you can, try to find out what data element that he tried to extract at the time where it will fail - open in Notepad can help.Concerning
Tim
-
create multiple xml attributes
Hi all
I'm not very experienced with the LabVIEW XML functions... so far I find that they are a major pain in the banana, in fact. I got as far as being able to analyze an existing xml file, but now I need to write a.
The file I'm writing is quite simple: one tag with several attributes. Because multiple data sources will create these files, I do not have the option of joyfully using the schema of LabVIEW and trust that everything will be fine. In addition, these features give enough visibility on what is written where and how and I'm nervous about 'black boxes' - I would like to know exactly what is happening and where, when I write code. Therefore, I must use XML to create this file instead.
A search revealed the Forum code to create a unique attribute. When I try to adapt this code to create several attributes, I get error-2602: node inserted in the wrong place.
Can someone please look at this example and tell me where I blew it away? I'm sure it's something stupid, but I can't.
Thank you all!
Diane
You were very close. Just move the append method of the child outside the loop and you're all good. The child is the element, in order to generate (name, value, attributes), then add it.
-
Hello
I export xml data into our database files. Since the xsd has changed it can be exported directly to another db to a third-party tool and I (among others) remove an attribute of an element
< TransferHeader xsi: Nil = 'true' / > should become < TransferHeader / >.CREATE TABLE xml_test( message XMLTYPE ) / INSERT INTO xml_test VALUES (q'[<?xml version="1.0" encoding="ISO-8859-1"?> <ZusyMeldung xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://www.zusy.de/2002/XMLSchema" xsi:schemaLocation="http://www.zusy.de/2002/XMLSchema ZusyAZ01.xsd"> <TransferHeader xsi:nil="true"/> <Daten> A lot more elements </Daten> </ZusyMeldung>]') / COMMIT;
I want to write files directly with the script next and tried to use updateXML in my SELECTION, but somehow I don't understand well.
ConcerningDECLARE CURSOR cur_out IS SELECT message FROM xml_test; BEGIN FOR r_out IN cur_out LOOP dbms_xslprocessor.clob2file ( r_out.message ,'DIR_XMLOUT' ,'out_name.xml' ,0 ); END LOOP; END; /
MarcusHi Marcus,
Given that you want to remove, try deleteXML :
select xmlserialize(document deletexml( message , '/ZusyMeldung/TransferHeader/@xsi:nil' , 'xmlns="http://www.zusy.de/2002/XMLSchema", xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"' ) ) from xml_test ;
Note that the functions of XML DML Oracle (updateXML, deleteXML etc.) are not recommended in 11.2.0.3 for the update of XQuery:
select xmlquery( 'declare default element namespace "http://www.zusy.de/2002/XMLSchema"; (: :) copy $d := . modify ( delete node $d/ZusyMeldung/TransferHeader/@xsi:nil ) return $d' passing message returning content ) from xml_test ;
-
Someone at - it an example of the XML of LabVIEW (not LabVIEW diagram) parser to create/attach an attribute? It doesn't seem to be an example in LV 8.6 using the Create/Get/Set methods attribute, and I've been fiddling with it for several hours without success.
What the example attached?
Maybe you are looking for
-
Can someone tell me if it is possible to transfer a photo from the Gallery on my smartphone directly to my laptop?I tried to make using the obvious ways, but every time that I received the message that the file was not sent. Any help would be appreci
-
How to open the host RAM space of the Satellite A100-014?
I tried to open the anchoring of the RAM in my computer add another RAM card.I followed the instructions in the manual. I could not open it! There is that a single screw to unscrew? Any information would be helpful thanks.
-
Satellite A30 shuts down / blocks
HelloI have a Toshiba Satellite A30 for about 2 years with no problems. Until today... I was chatting on MSN Messenger, but had to put my missing status and left the computer for about an hour. When I came back to it, the screen was all what it was w
-
Flow 13 - c020na (touch): card driver Realtek
How can I know who is the last recommended Realtek driver for my netbook? one installed is the version of the driver 2023.19.831.2015. I ask this is because the netbook has recently developed an intermittent shutdown problem ' PILOT - IRQL-NOT_LESS o
-
How I try to change the size of the scroll bar in the emails to Outlook Express 6.0?
When I open an e-mail in Outlook Express, the scroll bar on the left side is so thin and small, that I can't use the scroll bar. The up and down arrows are so small, I can't get the arrow in the box.