is their and new way to add a new line into the metadata description and summary fields. I have a python batch job that is downloading external data into our system. As part of the process it is updating the metadata. I have been asked to append the summary with some of our organization's info. But I can not get it to honor the a new line when viewing the metadata in ArcCatalog. I have tried the classic "\n" in python. Looks fine in the raw xml but looks like some sort of white space stripping is going on when it is viewed in ArcCatalog. I also tried editing the metadata via ArcCatalog and I get the same effect....
It must be being stripped by code, but can you confirm it behaves properly when done manually
(Pro being used in this example)
Here are the html tags being used with some extra gobbly stuff incase the first 4 lines mean anything to you
..... snip <SPAN class="language-javascript script token"><SPAN class="token tag"><SPAN class="token tag"><SPAN class="punctuation token"><</SPAN>SCRIPT</SPAN> <SPAN class="attr-name token">type</SPAN><SPAN class="attr-value token"><SPAN class="punctuation token">=</SPAN>text/javascript</SPAN> <SPAN class="attr-name token">xmlns</SPAN><SPAN class="attr-value token"><SPAN class="punctuation token">=</SPAN><SPAN class="punctuation token">"</SPAN><SPAN class="punctuation token">"</SPAN></SPAN> <SPAN class="attr-name token"><SPAN class="namespace token">xmlns:</SPAN>msxsl</SPAN><SPAN class="attr-value token"><SPAN class="punctuation token">=</SPAN><SPAN class="punctuation token">"</SPAN>urn:schemas-microsoft-com:xslt<SPAN class="punctuation token">"</SPAN></SPAN> <SPAN class="attr-name token"><SPAN class="namespace token">xmlns:</SPAN>esri</SPAN><SPAN class="attr-value token"><SPAN class="punctuation token">=</SPAN><SPAN class="punctuation token">"</SPAN><A class="jive-link-external-small" href="https://community.esri.com/external-link.jspa?url=http%3A%2F%2Fwww.esri.com%2Fmetadata%2F" target="_blank">http://www.esri.com/metadata/</A><SPAN class="punctuation token">"</SPAN></SPAN><SPAN class="punctuation token">></SPAN></SPAN> <SPAN class="comment token">/* */</SPAN> <SPAN class="keyword token">function</SPAN> <SPAN class="token function">hideShow</SPAN><SPAN class="punctuation token">(</SPAN>divID<SPAN class="punctuation token">)</SPAN> <SPAN class="punctuation token">{</SPAN> <SPAN class="keyword token">var</SPAN> item <SPAN class="operator token">=</SPAN> document<SPAN class="punctuation token">.</SPAN><SPAN class="token function">getElementById</SPAN><SPAN class="punctuation token">(</SPAN>divID<SPAN class="punctuation token">)</SPAN><SPAN class="punctuation token">;</SPAN> <SPAN class="keyword token">var</SPAN> itemShow <SPAN class="operator token">=</SPAN> document<SPAN class="punctuation token">.</SPAN><SPAN class="token function">getElementById</SPAN><SPAN class="punctuation token">(</SPAN>divID <SPAN class="operator token">+</SPAN> <SPAN class="string token">'Show'</SPAN><SPAN class="punctuation token">)</SPAN><SPAN class="punctuation token">;</SPAN> <SPAN class="keyword token">var</SPAN> itemHide <SPAN class="operator token">=</SPAN> document<SPAN class="punctuation token">.</SPAN><SPAN class="token function">getElementById</SPAN><SPAN class="punctuation token">(</SPAN>divID <SPAN class="operator token">+</SPAN> <SPAN class="string token">'Hide'</SPAN><SPAN class="punctuation token">)</SPAN><SPAN class="punctuation token">;</SPAN> <SPAN class="keyword token">if</SPAN> <SPAN class="punctuation token">(</SPAN>item<SPAN class="punctuation token">)</SPAN> <SPAN class="punctuation token">{</SPAN> <SPAN class="keyword token">if</SPAN> <SPAN class="punctuation token">(</SPAN>item<SPAN class="punctuation token">.</SPAN>className <SPAN class="operator token">==</SPAN> <SPAN class="string token">'hide'</SPAN><SPAN class="punctuation token">)</SPAN> <SPAN class="punctuation token">{</SPAN> item<SPAN class="punctuation token">.</SPAN>className<SPAN class="operator token">=</SPAN><SPAN class="string token">'show'</SPAN><SPAN class="punctuation token">;</SPAN> itemShow<SPAN class="punctuation token">.</SPAN>className<SPAN class="operator token">=</SPAN><SPAN class="string token">'hide'</SPAN><SPAN class="punctuation token">;</SPAN> itemHide<SPAN class="punctuation token">.</SPAN>className<SPAN class="operator token">=</SPAN><SPAN class="string token">'show'</SPAN><SPAN class="punctuation token">;</SPAN> <SPAN class="punctuation token">}</SPAN> <SPAN class="keyword token">else</SPAN> <SPAN class="punctuation token">{</SPAN> item<SPAN class="punctuation token">.</SPAN>className<SPAN class="operator token">=</SPAN><SPAN class="string token">'hide'</SPAN><SPAN class="punctuation token">;</SPAN> itemShow<SPAN class="punctuation token">.</SPAN>className<SPAN class="operator token">=</SPAN><SPAN class="string token">'show'</SPAN><SPAN class="punctuation token">;</SPAN> itemHide<SPAN class="punctuation token">.</SPAN>className<SPAN class="operator token">=</SPAN><SPAN class="string token">'hide'</SPAN><SPAN class="punctuation token">;</SPAN> <SPAN class="punctuation token">}</SPAN> <SPAN class="punctuation token">}</SPAN> <SPAN class="punctuation token">}</SPAN> <SPAN class="comment token">/* */</SPAN> <SPAN class="token tag"><SPAN class="token tag"><SPAN class="punctuation token"></</SPAN>SCRIPT</SPAN><SPAN class="punctuation token">></SPAN></SPAN></SPAN> <SPAN class="token tag"><SPAN class="token tag"><SPAN class="punctuation token"></</SPAN>HEAD</SPAN><SPAN class="punctuation token">></SPAN></SPAN> <SPAN class="token tag"><SPAN class="token tag"><SPAN class="punctuation token"><</SPAN>BODY</SPAN> <SPAN class="attr-name token">oncontextmenu</SPAN><SPAN class="attr-value token"><SPAN class="punctuation token">=</SPAN><SPAN class="punctuation token">"</SPAN>return true<SPAN class="punctuation token">"</SPAN></SPAN> <SPAN class="attr-name token">bgColor</SPAN><SPAN class="attr-value token"><SPAN class="punctuation token">=</SPAN>#f7f8f8</SPAN><SPAN class="punctuation token">></SPAN></SPAN> <SPAN class="token tag"><SPAN class="token tag"><SPAN class="punctuation token"><</SPAN>DIV</SPAN> <SPAN class="attr-name token">id</SPAN><SPAN class="attr-value token"><SPAN class="punctuation token">=</SPAN>overview</SPAN> <SPAN class="attr-name token">xmlns</SPAN><SPAN class="attr-value token"><SPAN class="punctuation token">=</SPAN><SPAN class="punctuation token">"</SPAN><SPAN class="punctuation token">"</SPAN></SPAN> <SPAN class="attr-name token"><SPAN class="namespace token">xmlns:</SPAN>esri</SPAN><SPAN class="attr-value token"><SPAN class="punctuation token">=</SPAN><SPAN class="punctuation token">"</SPAN><A class="jive-link-external-small" href="https://community.esri.com/external-link.jspa?url=http%3A%2F%2Fwww.esri.com%2Fmetadata%2F" target="_blank">http://www.esri.com/metadata/</A><SPAN class="punctuation token">"</SPAN></SPAN><SPAN class="punctuation token">></SPAN></SPAN><SPAN class="comment token"><!--StartFragment--></SPAN><SPAN class="token tag"><SPAN class="token tag"><SPAN class="punctuation token"><</SPAN>DIV</SPAN><SPAN class="punctuation token">></SPAN></SPAN> <SPAN class="token tag"><SPAN class="token tag"><SPAN class="punctuation token"><</SPAN>H3</SPAN><SPAN class="punctuation token">></SPAN></SPAN>Summary<SPAN class="token tag"><SPAN class="token tag"><SPAN class="punctuation token"></</SPAN>H3</SPAN><SPAN class="punctuation token">></SPAN></SPAN> <SPAN class="token tag"><SPAN class="token tag"><SPAN class="punctuation token"><</SPAN>P</SPAN> <SPAN class="attr-name token">id</SPAN><SPAN class="attr-value token"><SPAN class="punctuation token">=</SPAN>summary</SPAN><SPAN class="punctuation token">></SPAN></SPAN><SPAN class="token tag"><SPAN class="token tag"><SPAN class="punctuation token"></</SPAN>P</SPAN><SPAN class="punctuation token">></SPAN></SPAN><SPAN class="token tag"><SPAN class="token tag"><SPAN class="punctuation token"><</SPAN>PRE</SPAN> <SPAN class="attr-name token">class</SPAN><SPAN class="attr-value token"><SPAN class="punctuation token">=</SPAN>wrap</SPAN> <SPAN class="attr-name token"><SPAN class="namespace token">xmlns:</SPAN>msxsl</SPAN><SPAN class="attr-value token"><SPAN class="punctuation token">=</SPAN><SPAN class="punctuation token">"</SPAN>urn:schemas-microsoft-com:xslt<SPAN class="punctuation token">"</SPAN></SPAN><SPAN class="punctuation token">></SPAN></SPAN>a summary summary <SPAN class="token tag"><SPAN class="token tag"><SPAN class="punctuation token"><</SPAN>H3</SPAN><SPAN class="punctuation token">></SPAN></SPAN>Description<SPAN class="token tag"><SPAN class="token tag"><SPAN class="punctuation token"></</SPAN>H3</SPAN><SPAN class="punctuation token">></SPAN></SPAN> <SPAN class="token tag"><SPAN class="token tag"><SPAN class="punctuation token"><</SPAN>P</SPAN> <SPAN class="attr-name token">id</SPAN><SPAN class="attr-value token"><SPAN class="punctuation token">=</SPAN>description</SPAN><SPAN class="punctuation token">></SPAN></SPAN><SPAN class="token tag"><SPAN class="token tag"><SPAN class="punctuation token"></</SPAN>P</SPAN><SPAN class="punctuation token">></SPAN></SPAN><SPAN class="token tag"><SPAN class="token tag"><SPAN class="punctuation token"><</SPAN>PRE</SPAN> <SPAN class="attr-name token">class</SPAN><SPAN class="attr-value token"><SPAN class="punctuation token">=</SPAN>wrap</SPAN> <SPAN class="attr-name token"><SPAN class="namespace token">xmlns:</SPAN>msxsl</SPAN><SPAN class="attr-value token"><SPAN class="punctuation token">=</SPAN><SPAN class="punctuation token">"</SPAN>urn:schemas-microsoft-com:xslt<SPAN class="punctuation token">"</SPAN></SPAN><SPAN class="punctuation token">></SPAN></SPAN><SPAN class="token tag"><SPAN class="token tag"><SPAN class="punctuation token"><</SPAN>DIV</SPAN><SPAN class="style-attr language-css token"><SPAN class="attr-name token"> <SPAN class="attr-name token">style</SPAN></SPAN><SPAN class="punctuation token">="</SPAN><SPAN class="attr-value token"><SPAN class="property token">TEXT-ALIGN</SPAN><SPAN class="punctuation token">:</SPAN> left</SPAN><SPAN class="punctuation token">"</SPAN></SPAN><SPAN class="punctuation token">></SPAN></SPAN><SPAN class="token tag"><SPAN class="token tag"><SPAN class="punctuation token"><</SPAN>DIV</SPAN><SPAN class="punctuation token">></SPAN></SPAN><SPAN class="token tag"><SPAN class="token tag"><SPAN class="punctuation token"><</SPAN>P</SPAN><SPAN class="punctuation token">></SPAN></SPAN><SPAN class="token tag"><SPAN class="token tag"><SPAN class="punctuation token"><</SPAN>SPAN</SPAN><SPAN class="punctuation token">></SPAN></SPAN>line1<SPAN class="token tag"><SPAN class="token tag"><SPAN class="punctuation token"></</SPAN>SPAN</SPAN><SPAN class="punctuation token">></SPAN></SPAN><SPAN class="token tag"><SPAN class="token tag"><SPAN class="punctuation token"></</SPAN>P</SPAN><SPAN class="punctuation token">></SPAN></SPAN><SPAN class="token tag"><SPAN class="token tag"><SPAN class="punctuation token"><</SPAN>P</SPAN><SPAN class="punctuation token">></SPAN></SPAN><SPAN class="token tag"><SPAN class="token tag"><SPAN class="punctuation token"><</SPAN>SPAN</SPAN><SPAN class="punctuation token">></SPAN></SPAN>line2<SPAN class="token tag"><SPAN class="token tag"><SPAN class="punctuation token"></</SPAN>SPAN</SPAN><SPAN class="punctuation token">></SPAN></SPAN><SPAN class="token tag"><SPAN class="token tag"><SPAN class="punctuation token"></</SPAN>P</SPAN><SPAN class="punctuation token">></SPAN></SPAN><SPAN class="token tag"><SPAN class="token tag"><SPAN class="punctuation token"><</SPAN>P</SPAN><SPAN class="punctuation token">></SPAN></SPAN><SPAN class="token tag"><SPAN class="token tag"><SPAN class="punctuation token"><</SPAN>SPAN</SPAN><SPAN class="punctuation token">></SPAN></SPAN>line 3<SPAN class="token tag"><SPAN class="token tag"><SPAN class="punctuation token"></</SPAN>SPAN</SPAN><SPAN class="punctuation token">></SPAN></SPAN><SPAN class="token tag"><SPAN class="token tag"><SPAN class="punctuation token"></</SPAN>P</SPAN><SPAN class="punctuation token">></SPAN></SPAN><SPAN class="token tag"><SPAN class="token tag"><SPAN class="punctuation token"><</SPAN>P</SPAN><SPAN class="punctuation token">></SPAN></SPAN><SPAN class="token tag"><SPAN class="token tag"><SPAN class="punctuation token"><</SPAN>SPAN</SPAN><SPAN class="punctuation token">></SPAN></SPAN><SPAN class="token tag"><SPAN class="token tag"><SPAN class="punctuation token"></</SPAN>P</SPAN><SPAN class="punctuation token">></SPAN></SPAN><SPAN class="token tag"><SPAN class="token tag"><SPAN class="punctuation token"></</SPAN>DIV</SPAN><SPAN class="punctuation token">></SPAN></SPAN><SPAN class="token tag"><SPAN class="token tag"><SPAN class="punctuation token"></</SPAN>DIV</SPAN><SPAN class="punctuation token">></SPAN></SPAN><SPAN class="token tag"><SPAN class="token tag"><SPAN class="punctuation token"></</SPAN>SPAN</SPAN><SPAN class="punctuation token">></SPAN></SPAN><SPAN class="token tag"><SPAN class="token tag"><SPAN class="punctuation token"></</SPAN>PRE</SPAN><SPAN class="punctuation token">></SPAN></SPAN><SPAN class="token tag"><SPAN class="token tag"><SPAN class="punctuation token"></</SPAN>DIV</SPAN><SPAN class="punctuation token">></SPAN></SPAN><SPAN class="comment token"><!--EndFragment--></SPAN><SPAN class="token tag"><SPAN class="token tag"><SPAN class="punctuation token"></</SPAN>DIV</SPAN><SPAN class="punctuation token">></SPAN></SPAN><SPAN class="token tag"><SPAN class="token tag"><SPAN class="punctuation token"></</SPAN>BODY</SPAN><SPAN class="punctuation token">></SPAN></SPAN><SPAN class="token tag"><SPAN class="token tag"><SPAN class="punctuation token"></</SPAN>HTML</SPAN><SPAN class="punctuation token">></SPAN></SPAN><SPAN class="line-numbers-rows"><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN></SPAN>
That worked for me. Not through Python, but just entering it manually in the Description. Thanks!!
For ArcGIS Pro 2.7 I found the following to work fine in python:
from arcpy import metadata as md new_md = md.Metadata() new_md.description = 'this is a <br>test' tgt_item_md = md.Metadata(fc) if not tgt_item_md.isReadOnly: tgt_item_md.copy(new_md) tgt_item_md.save()
html tags did the trick!
"" also get the same result. The fact that it shows up okay in editor and raw xml exports makes me think that arc is doing white space stripping in the description view... it would be nice if someone from esri could confirm this is the desired behavior...
Thanks for the feedback. But no go...
either use the line separator
''
(or) os.linesep can work in python
Does putting this at the desired end of your line work?:
<SPAN class="" style="color: #7d2727; border: 0px; font-weight: inherit; font-size: 13px;"><br</SPAN><SPAN class="" style="color: #303336; border: 0px; font-weight: inherit; font-size: 13px;"> </SPAN><SPAN class="" style="color: #7d2727; border: 0px; font-weight: inherit; font-size: 13px;">/></SPAN><SPAN class="" style="color: #303336; border: 0px; font-weight: inherit; font-size: 13px;"> </SPAN>
Here's the source:
Adding a new line/break tag in XML - Stack Overflow
Les membres connectés peuvent publier, suivre les mises à jour, et plus encore. Nouveau ici ? Inscrivez-vous gratuitement.
Find useful guides, FAQs, and documents to help you navigate and make the most of Esri Community.