Unescape XML

Hi folks,
this is my Oracle Version :-(
BANNER
Oracle9i Enterprise Edition Release 9.2.0.8.0 - 64bit Production
PL/SQL Release 9.2.0.8.0 - Production
CORE    9.2.0.8.0       Production
TNS for IBM/AIX RISC System/6000: Version 9.2.0.8.0 - Production
NLSRTL Version 9.2.0.8.0 - ProductionIf I have an XML document like
<ROWSET>
<ROW>
  <TEXT>abc &#38;lt;def&#38;gt;</TEXT>
</ROW>
</ROWSET>I can retrieve the text element like
SQL>SELECT XMLType('<ROWSET><ROW><TEXT>abc &lt;def&gt;</TEXT></ROW></ROWSET>').extract('/ROWSET/ROW/TEXT/text()').getStringVal() AS x FROM DUAL;
X
abc &#38;lt;def&#38;gt;but I need it like
X
abc &lt;def&gt;Please help!
Urs

You could use REPLACE:
SQL> SELECT replace(replace(XMLType('<ROWSET><ROW><TEXT>abc &lt;def&gt;</TEXT></ROW></ROWSET>')
  2         .extract('/ROWSET/ROW/TEXT/text()').getStringVal(),'&lt;','<'),'&gt;','>') AS x
  3  FROM DUAL;
X
abc <def>Max
[My Italian Oracle blog|http://oracleitalia.wordpress.com/2010/01/07/creare-documenti-office-da-plsql/]

Similar Messages

  • Unescape XML chars

    I'm working with SOAP. It escapes XML that gets placed into the message. I cannot find a utility to change the escapes back to <, /, >, and such. Anyone know of one?

    The name of such a utility is a "parser".

  • DI Server returning unescaped Xml

    Hi All,
    I have a slight issue with the DI Server, if, for example, I do a Get operation on a BusinessPartner - if there is any data that contains any of the characters required to be escaped in Xml (the Ampersand, Quotation Mark, Apostrophe, LessThan and GreaterThan) - the DI Server will not escape them and the returning Xml is Invalid according to the Xml specification and cannot be read by the XmlTextReader without error.
    I also have a similar problem when using the CommandID attribute, the Apostrophe, Ampersands and Quotation Marks will not be escaped, despite them being so when passed in.
    Note that in some circumstances I have seen escaped characters but the behaviour does vary, especially for the CommandID
    I've had to implement some really unsightly work-arounds to help combat this issue, has anyone else come across it?
    Thanks
    Gary

    I've come across this same scenario for B1WS and am hoping for a solution from the community as well.

  • Cluster and Read Write XML

    In my applications I allow users to save their settings. I used to do this in a Ini file. So I wrote a Vi that could write any cluster and it worked ok. When I discovered that in the newer versions of LabVIEW you could Read/Write From/To xml, I changed inmediatly because it have some advantages form me but I am having some trouble.
    Every time I want to save a cluster I have to use
    Flatten To XML -> Escape XML -> Write XML
    and to load
    Load From XML -> Unescape XML -> Unflatten from XML.
    I also do other important things each time I save or load settings. So it seems to be reasonable to put all this in just two subvi's. (One for loading, One for saving). The problem is that I want to use it with any cluster
    What I want with can be summarized as following:
    - SaveSettings.vi
    --Inputs:
    ---Filename
    ---AnyCluster
    ---Error In
    --Outputs
    ---Error Out
    -LoadSettings.vi
    Inputs:
    ---Filename
    ---AnyCluster
    ---Error In
    Outputs
    ---DataFromXML
    ---Error Out
    I have tried using variants or references and I was not able to make generic sub vi (sub vi that don't know what is in the cluster). I don't want to use a polymorphic vi because it will demand making one load/save pair per each type of settings.
    Thanks,
    Hernan

    If I am correct you still you need to wire the data type to the Variant To Data. How can you put in a subvi ALL that is needed to handle the read/write of the cluster? I don't want to put any Flatten To XML or Unflatten From XML outside.
    The solution I came out with INI files was passing a reference to a cluster control but it is real unconfortable because I have to itereate through all items.
    When a control has a "Anything" input, is there any way to wire that input to a control and remains "Anything"?
    Thanks
    Hernan

  • XML Diff escape/unescape

    When performing a diff between two xml files that may contain an escaped character i.e.
    <FIELD>This &amp; That</FIELD>
    The resulting xsl does not leave the & escaped producing invalid xml.
    <FIELD>This & That</FIELD>
    Is there some way to instruct the method to escape reserved characters or is the only solution to parse through resulting xsl and escape characters after the fact.

    Hi,
    You might want to try CDATA or the attribute <disable-output-escaping="yes"/>.
    Thanks,
    rajat

  • Unescape chars in xml

    I'm trying to load an xml file which has charachters such as
    speechmarks, ".
    When I use {ds::name} in my html, instead of producing output
    like -> "text", I actually get \"text\".
    Is there any easy way around this?
    Thanks

    Are you using CDATA blocks around these nodes?
    http://www.w3schools.com/xml/xml_cdata.asp

  • Unescaping in xml document

    m using ContentHandler to generate xml
    in data i have <STRONG>
    which is being converted to & lt; STRONG & gt;
    i want to avoid this
    any idea how this can be done
    Shail

    Covered in the standard demo
    See the use of the SQL/XML functions to create an XML view over relational data.
    Please also note the following useful examples
    XML DB basic Demo at
    http://otn.oracle.com/tech/xml/xmldb/demonstrations/xdbBasicDemo.zip
    and the instructions at

  • XML escaping issue in ABAP during XML file transfer to App. Server.

    Hello Partners:
    I was going through some work of XML integration of SAP with a third-party. But came across an issue:
    The text descriptions we are sending within an XML tag has certain special characters like '&'. But the XML parser is not escaping it. Hence its replacing '&' with "&amp;" in the XML data string. So now I need to understand how can we implement escaping via ABAP for generated XML strings? Can you all please help me to understand which methods to use and how?
    It will be much appreciated.
    Thanks in advance.
    Vivek Singh.

    Hello SAP Friends!
    I'm facing the same problem concerning special chars in XML. I've tried to unescape the '&' sign with methods of if_ixml_ostream
       l_ostream->set_ignore_escaping( ignore_escaping = '&' ).
    the character is set and can be called by
      l_str = l_ostream->get_ignore_escaping( ).
    After the rendering was done and the download has finished the xml document can be loaded in EXCEL but the special characters are replaced by & a m p;
    Has anybody found a method to avoid the behaviour?
    My original problem is, the the data have to be in one cell in excel. I know at present no method to download data (text including line feeds) from SAP to excel into one cell.
    Maybe you have found a way to use  ignore_escaping in correct way!
    Thanks a lot in advance!!!

  • RegisterSchema or XML document problem

    Hi,
    I would like to import some XML documents from internet. The root element in document looks like that:
    <Report xmlns:p1="http://www.w3.org/2001/XMLSchema-instance" xmlns="spds.ifr.009.PL" p1:schemaLocation="spds.ifr.009.PL http://inetsqlcg:82/ReportServer?%2fReportPublisher%2fspds.ifr.009.PL&amp;rs%3aFormat=XML&amp;rc%3aSchema=True" Name="spds.ifr.009.PL" REPORTNAME1="blablabla">
    And root element in schema looks like that:
    <xs:schema xmlns="spds.ifr.009.PL" xmlns:xs="http://www.w3.org/2001/XMLSchema" targetNamespace="spds.ifr.009.PL" xmlns:xdb="http://xmlns.oracle.com/xdb">
    So, I have to register schema with URL from document:
    http://inetsqlcg:82/ReportServer?%2fReportPublisher%2fspds.ifr.009.PL&amp;rs%3aFormat=XML&amp;rc%3aSchema=True
    but when I'm trying to register with UTL_URL.ESCAPE I have ORA-31000 error.
    I can register with UTL_URL.UNESCAPE then the SCHEMA_URL in USER_XML_SCHEMAS is:
    http://inetsqlcg:82/ReportServer?/ReportPublisher/spds.ifr.009.PL&amp;rs:Format=XML&amp;rc:Schema=True
    but when I'm loading document into XMLTable correlated with schema there is an error: ORA-19007
    Any suggestion, please.
    And thanks in advance.

    This question is best asked in the {forum:id=34} forum. Make sure to look over the FAQ first. When posting, include the dbms_xmlschema.registerschema commands you used and show any errors. Also include your Oracle version (4 digits). Also include enough of the schema to show the root node for the corresponding XML.

  • Embedding inline HTML data in XML using the mx:XML tag with &lt; and &gt;

    What is best practice for embedding HTML within the
    <mx:XML> tag? Programmatically, I can implement this
    successfully:
    [Bindable]
    public var xmlDP:XML = <component data="&lt;" />;
    However, I get the following error if I try to store the same
    data inline in an mx:XML tag, as such:
    <mx:XML id="xmlDP">
    <component data="&lt;" />
    </mx:XML>
    Error #1095: XML parser failure: Unterminated attribute.
    If I change the MXML tag as follows, it works fine:
    <mx:XML id="xmlDP">
    <component data="&amp;lt;" />
    </mx:XML>
    Unfortunately, I also can not source the mx:XML tag to an XML
    file which uses &lt; or &gt; codes, as it yields the same
    results. This leads me to believe that the <mx:XML> tag does
    not support the special character codes for < and >, but why?
    Incidentally, this code also gives a 1095 error:
    <mx:XML id="xmlDP">
    <component data="&#0060;" />
    </mx:XML>
    This is causing an issue with my source data as it is not
    hand typed into Flex, and standard XML supports the &lt; and
    &gt; codes. I have tried a full HTML string, as shown below,
    but this also generates the error:
    <mx:XML id="xmlDP">
    <component data="&lt;b&gt;Test&lt;/b&gt;"
    />
    </mx:XML>
    Many thanks for any input you may have!

    I’m generating the XML source file with
    Microsoft’s XML Notepad 2007. It will encode invalid special
    characters automatically. My understanding is that this is the
    proper way to handle the less than symbol in a XML string, that is
    to say using the &lt; code.
    With respect to the escape and un-escape methods, I am able
    to successfully implement these in AS, but not in MXML. This makes
    sense considering they are AS methods, but I was hoping to be able
    to do something like:
    <mx:XML id="xmlDP">
    <component data="escape('<');" />
    </mx:XML>
    This gives the following compilation error:
    The value of attribute "data" must not contain the '<'
    character.
    As does using the escape character as such:
    <mx:XML id="xmlDP">
    <component data="\<" />
    </mx:XML>
    Below is an example of what the escape character may be used
    for in AS:
    var myString:String = "\"";
    trace(myString);
    // result: "
    Likewise, I can escape the < character as such:
    var myString:String = escape("<");
    trace(myString);
    // result: %3C
    <mx:XML id="xmlDP">
    <component data="%3C" />
    </mx:XML>
    trace(un-escape(xmlDP.@data));
    // result: <
    As you can see, using %3C and unescaping in AS will yield the
    correct result; however, this is not a practical method of
    representing the data in MXML as I would have to write an AS method
    to un-escape the XML string anyway, so I might as well just store
    the data in AS to begin with. I was hoping for a way to source an
    mx:XML object, without having to load it into ActionScript
    manually. Here’s an example of the functionality I would
    expect:
    <mx:XML id="xmlDP">
    <component data="&gt;" />
    </mx:XML>
    trace(xmlDP.@data);
    // result: >
    Only this does not work for the less than symbol. I’m
    assuming at this point that this is a bug in the Flex compiler.
    Thanks again for your help troubleshooting this one!

  • Javax.xml.stream.XMLInputFactory problems with &

    Hi all
    I am using javax.xml.stream.XMLInputFactory to create an XMLStreamReader, which reads XML in from a database.
    The problem is that when it encounters & entities, it is replacing them simply with &. When I then go to transform the XML with an XSL stylesheet, it fails with a parser error due to the presence of unescaped & characters.
    Looking at the API documentation, I thought that setting the property javax.xml.stream.isReplacingEntityReferences to false would solve the problem, but it isn't. The line of code I am using is as follows: -
    inputFactory.setProperty("javax.xml.stream.isReplacingEntityReferences", new Boolean(false));
    Any further ideas as to what I am doing wrong or what else I should be doing?
    Many thanks for reading and considering my post.
    Kind Regards
    Jon

    Thanks for your continued posts guys...
    Quote from DrClap: "So if you consider this to be a problem, you are most likely misunderstanding. Or is there a reason why you feel you have to know how the text was represented in the document it came from?"
    Right, just to clarify, this is what I'm trying to do...
    1. XML, complete with properly escaped characters (&, etc) is sitting in the database.
    2. Next, I am attempting to read the XML into memory character for character via an XMLInputStream and so I still want &, etc, not just &.
    3. Finally, I apply stylesheet to XML Now I do want the parser to decode the & into &. The problem is that it has already been done in 2 (above) so the parser in 3 falls over.
    Thanks for pointing out that javax.xml.stream.XMLInputFactory is not a standard class DrClap - looks like it's back to the drawing board for me!!
    Thanks
    Jon

  • JAXP: Write formatted XML to a file? Tabs?

    I've built an XML document (org.w3c.dom.Document) and I want to write a formatted version of that to a file.
    Currently, I'm doing the following, but it doesn't do indentation at all.
              TransformerFactory tf = TransformerFactory.newInstance();
              Transformer t = tf.newTransformer();
              t.setOutputProperty(OutputKeys.INDENT, "yes");
              FileOutputStream fileStream = new FileOutputStream(file);
              try {
                   t.transform(new DOMSource(document), new StreamResult(fileStream));
              } finally {
                   fileStream.close();
    What do I need to change?
    Thanks!
    Edited by: MassimoH on Nov 11, 2008 1:13 PM

    Hi Tony!
    I took a long weekend so I'm just now getting back to my problem!
    I'm still struggling with getting html markup to display in a PDF report. I have the html content in a clob (and n_clob - I tried both) field and TIDY was run on the data before inserting into the database (so it's well-formed). The problem appears when APEX creates the .xml file...the angled brackets are escaped (and I understand why this is necessary) but when I use an .xsl doc to transform the escaped characters back to angled brackets, it works, but all I get is text, not the html output (tables).
    I played around with the .xml file and did a search for & lt; and & gt; characters and replaced them with the less than/greater than characters, then ran it through BI Publisher with the .xsl file and the html tables show up perfectly. Also, my bold or italics tags only work if I do the search/replace on those characters.
    So if I could create an .xml file myself (which would contain html tags in their unescaped state) and pass that to BIP, I am hoping this solves the problem.
    Are you sorry you asked now? :)
    Tammy

  • Flash unescape vs. php urlencode

    Hi, the thing is more or less like this: i am sending from some flash app some text to be stored in a database. before i keep it in the database, in the server side, i escape (or in this case i urlencode, the server script is in php). it stores the escaped or url encoded string before attaching it to a sql sentence, hopefully without "s or 's. now to retrieve it, i get it inside an xml node, so it comes just as it was kept in the database (if i have gotten it in a urlvar it would have come unescaped). when i unescape it ant display it, the spaces are replaced by '+'. i have tried trhis page:
    http://meyerweb.com/eric/tools/dencoder/
    it seems to get it right either in php format (with +), or with flash (with %20), seems to be equivalent. how do i set them to agree, between the flash and php escapes? are there any alternative ways either in flash or in php to url-encode, or does any of those receive parameters?
    tnx

    decided to implement my own 'flash_compatible_encode' php escape.
    var _array_con:String = "$_conv = array(";
    var _cont:Number = 0;
    var _char:String;
    while (_cont<255) {
        _char = String.fromCharCode(_cont);
        _array_con += "\"" + escape(_char) + "\", ";
        _cont += 1;
    _array_con += ");";
    trace(_array_con);
    // remove the last comma, then use 'ord' in php as search index

  • Unescaping URL Encoded Strings

    Anyone know how to unescape URL encoded strings using XSL? I can use the translate() function to replace the + signs with spaces but the %3F and %3E style characters are causing problems. The escaped characters are in an XML doc.
    Any help would be appreciated.

    Anyone know how to unescape URL encoded strings using XSL? I can use the translate() function to replace the + signs with spaces but the %3F and %3E style characters are causing problems. The escaped characters are in an XML doc.
    Any help would be appreciated.

  • Regular expressions for xml parsing

    I have a xml parsing problem that I have to solve using regular expressions. It's not possible for me to use a different method other than regular expression. But there is a problem that I cannot seem to rap my head around. I want to extract the contents of a tag but the problem is that this tag occurs serveral times in the XML file but I only want the contents of one particular occurence. Basically the problem is as follows;
    I want to extract
    <bp:NAME ***stufff***>(I want this part)</bp:NAME>This tag can occur is serval places. For example here;
    <bp:ORGANISM>
    ***bunch of tags***
    <bp:NAME ***stufff***>***stufff***</bp:NAME>
    ***bunch of tags***
    </bp:ORGANISM>or here;
    <bp:DATABASE>
    ***bunch of tags***
    <bp:NAME ***stufff***>***stufff***</bp:NAME>
    ***bunch of tags***
    </bp:DATABASE>I do not want the content of those tags. I want the content of the <NAME> tag that is not between either the <ORGANISM> tags or the <DATABASE> tags. These tags can be in any order. I for the life of me cannot seem to figure this problem out. I tried several different approaches. For example I tried using the following regex
    (?:<bp:NAME [^>]*>([^<]*).*?<bp:ORGANISM>.*?</bp:ORGANISM>|
    <bp:ORGANISM>.*?</bp:ORGANISM>.*?<bp:NAME [^>]*>([^<]*))This kind of works, the information I want is either in the first captured group or in the second one. So I just check which group is not empty and that is the one I want. But this only works if there is only one other tag containing the name tag (in this particular regular expression that is the organism tag). Since there is another tag (the database tag) I have to work around, and these tags can be in any order, the regular expression then becomes three times as large and then there are six different groups in which the information I want can occur. This does not seem like a good idea to me. There has to be another way to do this. So I tried using the following regex;
    (?:</bp:ORGANISM>)?.*?(?:</bp:DATABASE>)?.*?<bp:NAME [^>]*>([^<]*)I thought this would get rid of any occurences of the other tags in front of the name tag, but it doesn't work either. It seems like it is not greedy enough. Well I think you get the point. I don't know what to try next so I really need some help.
    Here is an example of the type of data I will run into. The tags can be in any order and they do not always have to occur. In the example below the <DATABASE> tag is not part of the data and the name tag I want just happens to be in front of the organism tag but this is not always the case. The name tag I want is the firstname tag in the file, namely;
    <bp:NAME rdf:datatype="xsd:string">Progesterone receptor</bp:NAME>So I don't want the name tag that is in between the organism tags.
    <bp:protein rdf:ID="CPATH-27885">
    &#8722;<bp:COMMENT rdf:datatype="xsd:string">
    Belongs to the nuclear hormone receptor family. NR3 subfamily. SIMILARITY: Contains 1 nuclear receptor DNA-binding domain. WEB RESOURCE: Name=NIEHS-SNPs; URL="http://egp.gs.washington.edu/data/pgr/"; WEB RESOURCE: Name=Wikipedia; Note=Progesterone receptor entry; URL="http://en.wikipedia.org/wiki/Progesterone_receptor"; GENE SYNONYMS: NR3C3. COPYRIGHT:  Protein annotation is derived from the UniProt Consortium (http://www.uniprot.org/).  Distributed under the Creative Commons Attribution-NoDerivs License.
    </bp:COMMENT>
    <bp:SYNONYMS rdf:datatype="xsd:string">Nuclear receptor subfamily 3 group C member 3</bp:SYNONYMS>
    <bp:SYNONYMS rdf:datatype="xsd:string">PR</bp:SYNONYMS>
    <bp:NAME rdf:datatype="xsd:string">Progesterone receptor</bp:NAME>
    &#8722;<bp:ORGANISM>
    &#8722;<bp:bioSource rdf:ID="CPATH-LOCAL-112384">
    <bp:NAME rdf:datatype="xsd:string">Homo sapiens</bp:NAME>
    &#8722;<bp:TAXON-XREF>
    &#8722;<bp:unificationXref rdf:ID="CPATH-LOCAL-112385">
    <bp:DB rdf:datatype="xsd:string">NCBI_TAXONOMY</bp:DB>
    <bp:ID rdf:datatype="xsd:string">9606</bp:ID>
    </bp:unificationXref>
    </bp:TAXON-XREF>
    </bp:bioSource>
    </bp:ORGANISM>
    <bp:SHORT-NAME rdf:datatype="xsd:string">PRGR_HUMAN</bp:SHORT-NAME>
    &#8722;<bp:XREF>
    &#8722;<bp:relationshipXref rdf:ID="CPATH-LOCAL-112386">
    <bp:DB rdf:datatype="xsd:string">ENTREZ_GENE</bp:DB>
    <bp:ID rdf:datatype="xsd:string">5241</bp:ID>
    </bp:relationshipXref>
    </bp:XREF>
    &#8722;<bp:XREF>
    &#8722;<bp:unificationXref rdf:ID="CPATH-LOCAL-112387">
    <bp:DB rdf:datatype="xsd:string">UNIPROT</bp:DB>
    <bp:ID rdf:datatype="xsd:string">P06401</bp:ID>
    </bp:unificationXref>
    </bp:XREF>
    &#8722;<bp:XREF>
    &#8722;<bp:unificationXref rdf:ID="CPATH-LOCAL-112388">
    <bp:DB rdf:datatype="xsd:string">UNIPROT</bp:DB>
    <bp:ID rdf:datatype="xsd:string">A7X8B0</bp:ID>
    </bp:unificationXref>
    </bp:XREF>
    &#8722;<bp:XREF>
    &#8722;<bp:relationshipXref rdf:ID="CPATH-LOCAL-112389">
    <bp:DB rdf:datatype="xsd:string">GENE_SYMBOL</bp:DB>
    <bp:ID rdf:datatype="xsd:string">PGR</bp:ID>
    </bp:relationshipXref>
    </bp:XREF>
    &#8722;<bp:XREF>
    &#8722;<bp:relationshipXref rdf:ID="CPATH-LOCAL-112390">
    <bp:DB rdf:datatype="xsd:string">REF_SEQ</bp:DB>
    <bp:ID rdf:datatype="xsd:string">NP_000917</bp:ID>
    </bp:relationshipXref>
    </bp:XREF>
    &#8722;<bp:XREF>
    &#8722;<bp:unificationXref rdf:ID="CPATH-LOCAL-112391">
    <bp:DB rdf:datatype="xsd:string">UNIPROT</bp:DB>
    <bp:ID rdf:datatype="xsd:string">Q9UPF7</bp:ID>
    </bp:unificationXref>
    </bp:XREF>
    &#8722;<bp:XREF>
    &#8722;<bp:unificationXref rdf:ID="CPATH-LOCAL-113580">
    <bp:DB rdf:datatype="http://www.w3.org/2001/XMLSchema#string">CPATH</bp:DB>
    <bp:ID rdf:datatype="http://www.w3.org/2001/XMLSchema#string">27885</bp:ID>
    </bp:unificationXref>
    </bp:XREF>
    </bp:protein>Edited by: Dani3ll3 on Nov 19, 2009 2:51 AM

    Dani3ll3 wrote:
    Thanks a lot after I did that the regular expression worked. :)Good. But remember that in real life, you would then have to apply the XML rules to get the actual contents of the text node. For example it might be a CDATA section or it might include characters like ampersands which have been escaped and which you need to unescape. That's why it's better to use a proper parser, as already suggested.
    It seems to me this forum is full of posts where people are doing homework questions which teach them to do things the wrong way. But of course there's nothing the student can do about that.

Maybe you are looking for

  • Can I set kerning differently in one sentence?

    Can I set kerning differently in one sentence? I have to make it in javascript. help me please. function enterEanCode(){           var EanText= groupRef.textFrames.add();           EanText.textRange.size = 20.74;           EanText.textRange.character

  • ADF Tutorial, missing file

    I'm learning about ADF by doing the ADF tutorial step by step ( http://www.oracle.com/technology/obe/ADF_tutorial_1013/ADF_tutorial.pdf ). In chapter 2-15, I need a file called CreateInterface.txt. I need it to comlete the code for SRPublicFacadeLoca

  • System hang during installation of Solaris 10

    Dear all, Solaris 10 x86 6/06 installation on Magic-Pro MP-P6PE-1000 mainboard. I have tried on PC and VMware 5.5.1, but fail the installation. Moreover, I have tried append "-kd" at "kernal ...cdrom" in GRUB edit mode, and then boot the system. type

  • OBIEE 11.1.1.6.2 BP1 - Excel Export every 300 row corrupt

    Hi I'm facing an issue which looks like a bug. Some reports are corrupt after export to excel. When I remove all Header-Rows from this reports in excel then always row number 301, 601, 901... are concerned. In these rows the content of the first cell

  • Choices in Expanding My Processing Power

    Hi, I'm considering choices in expanding my processing power. Unlike those who only own Logic Pro (which only works if a dongle is inserted), I own Logic Express and I have upgraded to Logic Pro. This means, when considering the equation for expandin