Jump to content

PubMed XML XSL for OtherAbstract


Quito

This topic is 1559 days old. Please don't post here. Open a new topic instead.

Recommended Posts

Hi,

How can I make use of  <OtherAbstract Language="spa"> and <OtherAbstract Language="por"> in the XSL to specify the (OBJECTIVE, METHOD, RESULTS, CONCLUSIONS) fields to import?

Here is a snippet of the Pubmed XML:

-----------------------------------

<PubmedArticleSet>
<PubmedArticle>
    <MedlineCitation Status="MEDLINE" Owner="NLM">
        <Article>
         <Abstract>
                <AbstractText Label="OBJECTIVE" NlmCategory="OBJECTIVE">to describe...</AbstractText>
                <AbstractText Label="METHOD" NlmCategory="METHODS">descriptive correlational...</AbstractText>
                <AbstractText Label="RESULTS" NlmCategory="RESULTS">the average score of...</AbstractText>
                <AbstractText Label="CONCLUSIONS" NlmCategory="CONCLUSIONS">there were high levels of...</AbstractText>
            </Abstract>
            <Language>por</Language>
            <Language>eng</Language>
            <Language>spa</Language>
        </Article>
        <OtherAbstract Language="por">
            <AbstractText Label="OBJECTIVE" NlmCategory="UNASSIGNED">descrever o...</AbstractText>
            <AbstractText Label="METHOD" NlmCategory="UNASSIGNED">estudo correlacional...</AbstractText>
            <AbstractText Label="RESULTS" NlmCategory="UNASSIGNED">a media...</AbstractText>
            <AbstractText Label="CONCLUSIONS" NlmCategory="UNASSIGNED">ha altos...</AbstractText>
        </OtherAbstract>
        <OtherAbstract Language="spa">
            <AbstractText Label="OBJECTIVE" NlmCategory="UNASSIGNED">describir el...</AbstractText>
            <AbstractText Label="METHOD" NlmCategory="UNASSIGNED">descriptivo correlacional...</AbstractText>
            <AbstractText Label="RESULTS" NlmCategory="UNASSIGNED">se encontró...</AbstractText>
            <AbstractText Label="CONCLUSIONS" NlmCategory="UNASSIGNED">existen altos niveles de...</AbstractText>
        </OtherAbstract>
    </MedlineCitation>
</PubmedArticle>
</PubmedArticleSet>

-----------------------------------

The corresponding XSL I've managed to flesh-out is:

<METADATA>

<!-- This is where the official NlmCategory Abstract goes  -->
                <FIELD EMPTYOK="YES" MAXREPEAT="1" NAME="AbstractTextObjective" TYPE="TEXT"/>
                <FIELD EMPTYOK="YES" MAXREPEAT="1" NAME="AbstractTextMethods" TYPE="TEXT"/>
                <FIELD EMPTYOK="YES" MAXREPEAT="1" NAME="AbstractTextResults" TYPE="TEXT"/>
                <FIELD EMPTYOK="YES" MAXREPEAT="1" NAME="AbstractTextConclusions" TYPE="TEXT"/>

                <FIELD EMPTYOK="YES" MAXREPEAT="1" NAME="Language" TYPE="TEXT"/>

<!-- Here are the OtherAbstract fields I want to import with common Label and NlmCategory names. They get messed up during import, as the language has not been defined for each -->

                <FIELD EMPTYOK="YES" MAXREPEAT="1" NAME="OtherAbstractTextObjective_por" TYPE="TEXT"/>
                <FIELD EMPTYOK="YES" MAXREPEAT="1" NAME="OtherAbstractTextMethods_por" TYPE="TEXT"/>
                <FIELD EMPTYOK="YES" MAXREPEAT="1" NAME="OtherAbstractTextResults_por" TYPE="TEXT"/>
                <FIELD EMPTYOK="YES" MAXREPEAT="1" NAME="OtherAbstractTextConclusions_por" TYPE="TEXT"/>

                <FIELD EMPTYOK="YES" MAXREPEAT="1" NAME="OtherAbstractTextObjective_spa" TYPE="TEXT"/>
                <FIELD EMPTYOK="YES" MAXREPEAT="1" NAME="OtherAbstractTextMethods_spa" TYPE="TEXT"/>
                <FIELD EMPTYOK="YES" MAXREPEAT="1" NAME="OtherAbstractTextResults_spa" TYPE="TEXT"/>
                <FIELD EMPTYOK="YES" MAXREPEAT="1" NAME="OtherAbstractTextConclusions_spa" TYPE="TEXT"/>

</METADATA>

<RESULTSET>

                    <!-- This is the standard form for English, using @NlmCategory. All others use @Label and NLMCategory=UNASSIGNED -->
                    <xsl:for-each select="MedlineCitation">
                            <COL><DATA><xsl:value-of select="Article/Abstract/AbstractText[@NlmCategory='OBJECTIVE']"/></DATA></COL>
                            <COL><DATA><xsl:value-of select="Article/Abstract/AbstractText[@NlmCategory='METHODS']"/></DATA></COL>
                            <COL><DATA><xsl:value-of select="Article/Abstract/AbstractText[@NlmCategory='RESULTS']"/></DATA></COL>
                            <COL><DATA><xsl:value-of select="Article/Abstract/AbstractText[@NlmCategory='CONCLUSIONS']"/></DATA></COL>
                    </xsl:for-each>

                        <COL>
                            <DATA>
                                <xsl:for-each select="MedlineCitation/Article">
                                    <xsl:value-of select="Language"/>
                                        <xsl:if test="position()!=last()">
                                    <xsl:value-of select="', '"/>
                                        </xsl:if>
                                </xsl:for-each>
                            </DATA>
                        </COL>

                    <COL>
                        <DATA><xsl:value-of select="MedlineCitation/OtherAbstract/@Language"/></DATA>
                    </COL>

</RESULTSET>

-------------------------------------

The problem I have is capturing the right fields within OtherAbstract, according to OtherAbstract Language="xxx"

<Language> can usually have up to three (por, eng, spa), but they are not ordered (actually, the XSL is only importing the first <Language> because I don't know how to make it import the other two languages). Abstract/AbstractText is reserved for English and has an 'NlmCategory' so it's fairly simple to recognize the corresponding field. My current XSL allows importing OtherAbstract Language="".

OtherAbstract/Abstract contains fields for abstracts in languages other than English, but the Labels (OBJECTIVE, METHOD, RESULTS, CONCLUSIONS) are usually the same among the PubmedArticles and their NlmCategory is always 'UNASSIGNED', so importing by Labels or NlmCategory messes up the languages.

All the very best,

Daniel

Edited by Quito
Missing some XSL
Link to comment
Share on other sites

IMHO you should import each language as a separate record (otherwise why would you need the language field). So the first 5 fields you show should be quite sufficient. However, you will need another field to link the multiple records to a common parent citation. I don't see a unique identifier in the provided XML example, and this might pose a problem - esp. if the source can contain multiple citations.

Note that this assumes that the labels (OBJECTIVE, METHOD, RESULTS, CONCLUSIONS) are always the same (even if some are missing). Otherwise the proper structure for importing such data is to have a record for each AbstractText, with fields for:

  • CitationID
  • Label
  • Language
  • AbstractText

 

  • Like 1
Link to comment
Share on other sites

1 hour ago, Quito said:

                        <COL>
                            <DATA>
                                <xsl:for-each select="MedlineCitation/Article">
                                    <xsl:value-of select="Language"/>
                                        <xsl:if test="position()!=last()">
                                    <xsl:value-of select="', '"/>
                                        </xsl:if>
                                </xsl:for-each>
                            </DATA>
                        </COL>

Better write a template than a for-each

  • Like 1
Link to comment
Share on other sites

Thank you Comment,

One PubMed Article contains an Abstract in English and one or more translations split into one, four or five fields.  I included the most common in my XML/XSL (OBJECTIVE, METHOD, RESULTS, CONCLUSIONS). There is a unique identifier for the entire PubMed Article, called PMID.  If I understood correctly, you suggest using PMID and Language to retrieve the OtherAbstract fields?

This could work. Can you elaborate a bit further in order to give it a try?

------------------

Thank you gt667,

I've seen the 'template' code within a few sample XSL's. I'll give it a whack and update shortly.

Best,

Daniel

Link to comment
Share on other sites

If CPU is of importance to you template will be spending way less CPU( and probably memory as well ) than for-each.

Link to comment
Share on other sites

Hi ggt667,

So, I replaced the for-each Language XSL with:

<xsl:template match="MedlineCitation/Article/Language">
  Language: <span style="color:#ff0000">
  <xsl:value-of select="."/></span>
  <br />
</xsl:template>

but it threw an exception complaining there cannot be two <xsl:template>, the other one being an <xsl:template match="/"> at the top.  The dialog window truncates the error message, so I cannot even tell where/what the error is...

Link to comment
Share on other sites

templates are like subroutines, you will have to define and call them. This was the first entry when I DDGed `xslt template call` https://www.w3schools.com/xml/ref_xsl_el_call-template.asp

Edited by ggt667
Link to comment
Share on other sites

1 hour ago, Quito said:

There is a unique identifier for the entire PubMed Article, called PMID.

Can you post a more representative XML, one that shows the PMID? Also, if there can be more than one MedlineCitation within a PubmedArticle, you will need a unique ID for each one of these too. If the XML doesn't have them, you will need to create them during the import; this is possible, but it adds another level of complexity.

 

1 hour ago, Quito said:

If I understood correctly, you suggest using PMID and Language to retrieve the OtherAbstract fields?

No, I suggest using the PMID to link the individual AbstractText records to the parent article (or citation) within your Filemake solution.

---

P.S. The xsl:for-each instruction is an integral part of the XSLT language and there is absolutely nothing wrong with using it (where appropriate). I am not aware of a shred of evidence to suggest it is slower or uses more memory than separate templates.

 

Edited by comment
Link to comment
Share on other sites

23 minutes ago, comment said:

P.S. The xsl:for-each instruction is an integral part of the XSLT language and there is absolutely nothing wrong with using it (where appropriate). I am not aware of a shred of evidence to suggest it is slower or uses more memory than separate templates.

The appropriate use of for-each is for the equivalent of FileMaker's value list.

Link to comment
Share on other sites

Thanks, this is most likely sufficient to have an opinion, however is there a public access point where these XMLs can be retrieved?

Link to comment
Share on other sites

The following stylesheet will create a record for each abstract, with fields for:

  • PMID
  • Language (this will be empty for the "main" abstract; if you like, you can fill it with a default value)
  • Objective
  • Methods
  • Results
  • Conclusions
<xsl:stylesheet version="1.0" 
xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:output method="xml" version="1.0" encoding="utf-8" indent="yes"/>

<xsl:template match="/PubmedArticleSet">
	<FMPXMLRESULT xmlns="http://www.filemaker.com/fmpxmlresult">
		<!-- FIELDS -->
		<METADATA>
			<FIELD NAME="PMID"/>
			<FIELD NAME="Language"/>
			<FIELD NAME="Objective"/>
			<FIELD NAME="Methods"/>
			<FIELD NAME="Results"/>
			<FIELD NAME="Conclusions"/>
		</METADATA>
		<!-- DATA -->
		<RESULTSET>
			<xsl:for-each select="PubmedArticle/MedlineCitation">
				<xsl:variable name="id" select="PMID" />
				<xsl:for-each select="Article/Abstract | OtherAbstract">
					<ROW>
						<COL><DATA><xsl:value-of select="$id"/></DATA></COL>
						<COL><DATA><xsl:value-of select="@Language"/></DATA></COL>
						<COL><DATA><xsl:value-of select="AbstractText[@Label='OBJECTIVE' or @NlmCategory='OBJECTIVE']"/></DATA></COL>
						<COL><DATA><xsl:value-of select="AbstractText[@Label='METHOD']"/></DATA></COL>
						<COL><DATA><xsl:value-of select="AbstractText[@Label='RESULTS']"/></DATA></COL>
						<COL><DATA><xsl:value-of select="AbstractText[@Label='CONCLUSIONS']"/></DATA></COL>
					</ROW>
				</xsl:for-each>
			</xsl:for-each>
		</RESULTSET>
	</FMPXMLRESULT>
</xsl:template>

</xsl:stylesheet>

This is intended for importing into an Abstracts table, that will be related to an Articles table by matching PMID. Importing the provided example will result in:

image.thumb.png.851b8578551b16bd1a417f7390b0c45a.png

 

Note that there is an inconsistency in the format of the input: in most AbstractText elements, the Label attribute has the meaningful content - but this attribute is missing in the first AbstractText element in Abstract. I have added a workaround for this case, you may need to add more.

 

----

 

The following stylesheet will create a record for each abstract text, with fields for:

  • PMID
  • Language
  • Category
  • Text
<xsl:stylesheet version="1.0" 
xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:output method="xml" version="1.0" encoding="utf-8" indent="yes"/>

<xsl:template match="/PubmedArticleSet">
	<FMPXMLRESULT xmlns="http://www.filemaker.com/fmpxmlresult">
		<!-- FIELDS -->
		<METADATA>
			<FIELD NAME="PMID"/>
			<FIELD NAME="Language"/>
			<FIELD NAME="Category"/>
			<FIELD NAME="Text"/>
		</METADATA>
		<!-- DATA -->
		<RESULTSET>
			<xsl:for-each select="PubmedArticle/MedlineCitation">
				<xsl:variable name="id" select="PMID" />
				<xsl:for-each select="Article/Abstract/AbstractText | OtherAbstract/AbstractText ">
					<ROW>
						<COL><DATA><xsl:value-of select="$id"/></DATA></COL>
						<COL><DATA><xsl:value-of select="../@Language"/></DATA></COL>
						<COL><DATA><xsl:value-of select="(@Label | @NlmCategory)[1]"/></DATA></COL>
						<COL><DATA><xsl:value-of select="."/></DATA></COL>
					</ROW>
				</xsl:for-each>
			</xsl:for-each>
		</RESULTSET>
	</FMPXMLRESULT>
</xsl:template>

</xsl:stylesheet>

This is intended for importing into an AbstractTexts table, that will be related to an Articles table by matching PMID. Importing the provided example will result in:

image.png.8c2a23c82a129da55b9de3f5afe1388b.png

Edited by comment
Link to comment
Share on other sites

5 hours ago, ggt667 said:

Thanks, this is most likely sufficient to have an opinion, however is there a public access point where these XMLs can be retrieved?

Hi ggt667,

Yes. The URL for the two examples is:

https://www.ncbi.nlm.nih.gov/pubmed/?term=31618393+31618392

You will need to select the Format dropdown and change from Summary to XML. The XML is missing <PubMedArticleSet> at the very beginning and </PubMedArticleSet> at the end.

5 hours ago, comment said:

The following stylesheet will create a record for each abstract, with fields for:

  • PMID
  • Language (this will be empty for the "main" abstract; if you like, you can fill it with a default value)
  • Objective
  • Methods
  • Results
  • Conclusions

<xsl:stylesheet version="1.0" 
xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:output method="xml" version="1.0" encoding="utf-8" indent="yes"/>

<xsl:template match="/PubmedArticleSet">
	<FMPXMLRESULT xmlns="http://www.filemaker.com/fmpxmlresult">
		<!-- FIELDS -->
		<METADATA>
			<FIELD NAME="PMID"/>
			<FIELD NAME="Language"/>
			<FIELD NAME="Objective"/>
			<FIELD NAME="Methods"/>
			<FIELD NAME="Results"/>
			<FIELD NAME="Conclusions"/>
		</METADATA>
		<!-- DATA -->
		<RESULTSET>
			<xsl:for-each select="PubmedArticle/MedlineCitation">
				<xsl:variable name="id" select="PMID" />
				<xsl:for-each select="Article/Abstract | OtherAbstract">
					<ROW>
						<COL><DATA><xsl:value-of select="$id"/></DATA></COL>
						<COL><DATA><xsl:value-of select="@Language"/></DATA></COL>
						<COL><DATA><xsl:value-of select="AbstractText[@Label='OBJECTIVE' or @NlmCategory='OBJECTIVE']"/></DATA></COL>
						<COL><DATA><xsl:value-of select="AbstractText[@Label='METHOD']"/></DATA></COL>
						<COL><DATA><xsl:value-of select="AbstractText[@Label='RESULTS']"/></DATA></COL>
						<COL><DATA><xsl:value-of select="AbstractText[@Label='CONCLUSIONS']"/></DATA></COL>
					</ROW>
				</xsl:for-each>
			</xsl:for-each>
		</RESULTSET>
	</FMPXMLRESULT>
</xsl:template>

</xsl:stylesheet>

This is intended for importing into an Abstracts table, that will be related to an Articles table by matching PMID. Importing the provided example will result in:

image.thumb.png.851b8578551b16bd1a417f7390b0c45a.png

 

Note that there is an inconsistency in the format of the input: in most AbstractText elements, the Label attribute has the meaningful content - but this attribute is missing in the first AbstractText element in Abstract. I have added a workaround for this case, you may need to add more.

 

----

 

The following stylesheet will create a record for each abstract text, with fields for:

  • PMID
  • Language
  • Category
  • Text

<xsl:stylesheet version="1.0" 
xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:output method="xml" version="1.0" encoding="utf-8" indent="yes"/>

<xsl:template match="/PubmedArticleSet">
	<FMPXMLRESULT xmlns="http://www.filemaker.com/fmpxmlresult">
		<!-- FIELDS -->
		<METADATA>
			<FIELD NAME="PMID"/>
			<FIELD NAME="Language"/>
			<FIELD NAME="Category"/>
			<FIELD NAME="Text"/>
		</METADATA>
		<!-- DATA -->
		<RESULTSET>
			<xsl:for-each select="PubmedArticle/MedlineCitation">
				<xsl:variable name="id" select="PMID" />
				<xsl:for-each select="Article/Abstract/AbstractText | OtherAbstract/AbstractText ">
					<ROW>
						<COL><DATA><xsl:value-of select="$id"/></DATA></COL>
						<COL><DATA><xsl:value-of select="../@Language"/></DATA></COL>
						<COL><DATA><xsl:value-of select="(@Label | @NlmCategory)[1]"/></DATA></COL>
						<COL><DATA><xsl:value-of select="."/></DATA></COL>
					</ROW>
				</xsl:for-each>
			</xsl:for-each>
		</RESULTSET>
	</FMPXMLRESULT>
</xsl:template>

</xsl:stylesheet>

This is intended for importing into an AbstractTexts table, that will be related to an Articles table by matching PMID. Importing the provided example will result in:

image.png.8c2a23c82a129da55b9de3f5afe1388b.png

Thank you Comment. Whoa! That's an incredibly elegant way of capturing everything in one go!

It's going to take me a few days to adapt this. I'll post again as soon as I have it working and included in my XSL.

Kind regards,

Daniel

Link to comment
Share on other sites

14 minutes ago, Quito said:

I'll post again as soon as I have it working and included in my XSL.

Not sure what you mean by "included in my XSL". This is meant to exist on its own, not to be included in another stylesheet. The XML contains data that needs to be imported into multiple tables - and you can only import into one table at a time. Each import needs its own stylesheet. 

 

Link to comment
Share on other sites

17 hours ago, Quito said:

Hi ggt667,

So, I replaced the for-each Language XSL with:

<xsl:template match="MedlineCitation/Article/Language">
  Language: <span style="color:#ff0000">
  <xsl:value-of select="."/></span>
  <br />
</xsl:template>

but it threw an exception complaining there cannot be two <xsl:template>, the other one being an <xsl:template match="/"> at the top.  The dialog window truncates the error message, so I cannot even tell where/what the error is...

This may actually be a better example: https://www.devguru.com/content/technologies/xslt/elements-xslcall-template.html

Link to comment
Share on other sites

10 hours ago, comment said:

Not sure what you mean by "included in my XSL". This is meant to exist on its own, not to be included in another stylesheet. The XML contains data that needs to be imported into multiple tables - and you can only import into one table at a time. Each import needs its own stylesheet. 

 

While this is true from FileMaker's perspective I have several XSLTs that are first complete real world XML documents( MXML, MTML, OAG, UBL / EHF, and others, ) then split into parts for FileMaker specific imports.

Edited by ggt667
Link to comment
Share on other sites

On 1/3/2020 at 4:43 AM, Quito said:

Hi ggt667,

Yes. The URL for the two examples is:

https://www.ncbi.nlm.nih.gov/pubmed/?term=31618393+31618392

You will need to select the Format dropdown and change from Summary to XML. The XML is missing <PubMedArticleSet> at the very beginning and </PubMedArticleSet> at the end.

Thank you Comment. Whoa! That's an incredibly elegant way of capturing everything in one go!

It's going to take me a few days to adapt this. I'll post again as soon as I have it working and included in my XSL.

Kind regards,

Daniel

Here is the raw query( I'm not sure which parameters are required, far from all are filled in, and many appears to be double up ) that changing the Summary to XML does:

Quote

POST /pubmed HTTP/1.1
Host: www.ncbi.nlm.nih.gov
Connection: keep-alive
Content-Length: 4351
Cache-Control: max-age=0
Origin: https://www.ncbi.nlm.nih.gov
Upgrade-Insecure-Requests: 1
Content-Type: application/x-www-form-urlencoded
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_2) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/79.0.3945.88 Safari/537.36
Sec-Fetch-User: ?1
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.9
Sec-Fetch-Site: cross-site
Sec-Fetch-Mode: navigate
Accept-Encoding: gzip, deflate, br
Accept-Language: en-GB,en-US;q=0.9,en;q=0.8

term=31618393+31618392%5Buid%5D+&EntrezSystem2.PEntrez.PubMed.Pubmed_PageController.PreviousPageName=results&EntrezSystem2.PEntrez.PubMed.Pubmed_PageController.SpecialPageName=&EntrezSystem2.PEntrez.PubMed.Pubmed_Facets.FacetsUrlFrag=filters%3D&EntrezSystem2.PEntrez.PubMed.Pubmed_Facets.FacetSubmitted=false&EntrezSystem2.PEntrez.PubMed.Pubmed_Facets.BMFacets=&EntrezSystem2.PEntrez.PubMed.Pubmed_ResultsPanel.Pubmed_DisplayBar.sPresentation=xml&EntrezSystem2.PEntrez.PubMed.Pubmed_ResultsPanel.Pubmed_DisplayBar.sSort=none&EntrezSystem2.PEntrez.PubMed.Pubmed_ResultsPanel.Pubmed_DisplayBar.FFormat=docsum&EntrezSystem2.PEntrez.PubMed.Pubmed_ResultsPanel.Pubmed_DisplayBar.FSort=&email_format=docsum&EntrezSystem2.PEntrez.PubMed.Pubmed_ResultsPanel.Pubmed_DisplayBar.email_sort=&email_address=&email_subj=31618393+31618392%5Buid%5D+-+PubMed&email_add_text=&EmailCheck1=&EmailCheck2=&BibliographyUser=&BibliographyUserName=my&EntrezSystem2.PEntrez.PubMed.Pubmed_ResultsPanel.Pubmed_DisplayBar.FileFormat=docsum&EntrezSystem2.PEntrez.PubMed.Pubmed_ResultsPanel.Pubmed_DisplayBar.LastPresentation=docsum&EntrezSystem2.PEntrez.PubMed.Pubmed_ResultsPanel.Pubmed_DisplayBar.Presentation=xml&EntrezSystem2.PEntrez.PubMed.Pubmed_ResultsPanel.Pubmed_DisplayBar.PageSize=20&EntrezSystem2.PEntrez.PubMed.Pubmed_ResultsPanel.Pubmed_DisplayBar.LastPageSize=20&EntrezSystem2.PEntrez.PubMed.Pubmed_ResultsPanel.Pubmed_DisplayBar.Sort=&EntrezSystem2.PEntrez.PubMed.Pubmed_ResultsPanel.Pubmed_DisplayBar.LastSort=&EntrezSystem2.PEntrez.PubMed.Pubmed_ResultsPanel.Pubmed_DisplayBar.FileSort=&EntrezSystem2.PEntrez.PubMed.Pubmed_ResultsPanel.Pubmed_DisplayBar.Format=text&EntrezSystem2.PEntrez.PubMed.Pubmed_ResultsPanel.Pubmed_DisplayBar.LastFormat=&EntrezSystem2.PEntrez.PubMed.Pubmed_ResultsPanel.Pubmed_DisplayBar.PrevPageSize=20&EntrezSystem2.PEntrez.PubMed.Pubmed_ResultsPanel.Pubmed_DisplayBar.PrevPresentation=docsum&EntrezSystem2.PEntrez.PubMed.Pubmed_ResultsPanel.Pubmed_DisplayBar.PrevSort=&CollectionStartIndex=1&CitationManagerStartIndex=1&CitationManagerCustomRange=false&EntrezSystem2.PEntrez.PubMed.Pubmed_ResultsPanel.Pubmed_ResultsController.ResultCount=2&EntrezSystem2.PEntrez.PubMed.Pubmed_ResultsPanel.Pubmed_ResultsController.RunLastQuery=&EntrezSystem2.PEntrez.PubMed.Pubmed_ResultsPanel.EmailTab.EmailReport=&EntrezSystem2.PEntrez.PubMed.Pubmed_ResultsPanel.EmailTab.EmailFormat=&EntrezSystem2.PEntrez.PubMed.Pubmed_ResultsPanel.EmailTab.EmailCount=&EntrezSystem2.PEntrez.PubMed.Pubmed_ResultsPanel.EmailTab.EmailStart=&EntrezSystem2.PEntrez.PubMed.Pubmed_ResultsPanel.EmailTab.EmailSort=&EntrezSystem2.PEntrez.PubMed.Pubmed_ResultsPanel.EmailTab.Email=&EntrezSystem2.PEntrez.PubMed.Pubmed_ResultsPanel.EmailTab.EmailSubject=&EntrezSystem2.PEntrez.PubMed.Pubmed_ResultsPanel.EmailTab.EmailText=&EntrezSystem2.PEntrez.PubMed.Pubmed_ResultsPanel.EmailTab.EmailQueryKey=&EntrezSystem2.PEntrez.PubMed.Pubmed_ResultsPanel.EmailTab.EmailHID=1r1WD96DIMUWZetUgmuwE3ML8uzkrFTHG4KcPHT1lo9Sj7pzeetkwhsdsqevcYZ8Uvlm1NtAw_TU8ieO9udbjsyLp8l7gDN9bj&EntrezSystem2.PEntrez.PubMed.Pubmed_ResultsPanel.EmailTab.QueryDescription=&EntrezSystem2.PEntrez.PubMed.Pubmed_ResultsPanel.EmailTab.Key=&EntrezSystem2.PEntrez.PubMed.Pubmed_ResultsPanel.EmailTab.Answer=&EntrezSystem2.PEntrez.PubMed.Pubmed_ResultsPanel.EmailTab.Holding=&EntrezSystem2.PEntrez.PubMed.Pubmed_ResultsPanel.EmailTab.HoldingFft=&EntrezSystem2.PEntrez.PubMed.Pubmed_ResultsPanel.EmailTab.HoldingNdiSet=&EntrezSystem2.PEntrez.PubMed.Pubmed_ResultsPanel.EmailTab.OToolValue=&EntrezSystem2.PEntrez.PubMed.Pubmed_ResultsPanel.EmailTab.SubjectList=&EntrezSystem2.PEntrez.DbConnector.Db=pubmed&EntrezSystem2.PEntrez.DbConnector.LastDb=pubmed&EntrezSystem2.PEntrez.DbConnector.Term=31618393+31618392%5Buid%5D&EntrezSystem2.PEntrez.DbConnector.LastTabCmd=&EntrezSystem2.PEntrez.DbConnector.LastQueryKey=1&EntrezSystem2.PEntrez.DbConnector.IdsFromResult=&EntrezSystem2.PEntrez.DbConnector.LastIdsFromResult=&EntrezSystem2.PEntrez.DbConnector.LinkName=&EntrezSystem2.PEntrez.DbConnector.LinkReadableName=&EntrezSystem2.PEntrez.DbConnector.LinkSrcDb=&EntrezSystem2.PEntrez.DbConnector.Cmd=displaychanged&EntrezSystem2.PEntrez.DbConnector.TabCmd=&EntrezSystem2.PEntrez.DbConnector.QueryKey=&p%24a=EntrezSystem2.PEntrez.PubMed.Pubmed_ResultsPanel.Pubmed_DisplayBar.sPresentation&p%24l=EntrezSystem2&p%24st=pubmed

This is a feature I miss in FileMaker being able to import XML using the HTTP verb _POST with a payload.

It appears Brave claims to be FireFox, Safari and Chrome?

The payload has been split by individual parameters below( Far from all are filled in ) 

["term", "31618393+31618392%5Buid%5D+"]
["EntrezSystem2.PEntrez.PubMed.Pubmed_PageController.PreviousPageName", "results"]
["EntrezSystem2.PEntrez.PubMed.Pubmed_PageController.SpecialPageName", ""]
["EntrezSystem2.PEntrez.PubMed.Pubmed_Facets.FacetsUrlFrag", "filters%3D"]
["EntrezSystem2.PEntrez.PubMed.Pubmed_Facets.FacetSubmitted", "false"]
["EntrezSystem2.PEntrez.PubMed.Pubmed_Facets.BMFacets", ""]
["EntrezSystem2.PEntrez.PubMed.Pubmed_ResultsPanel.Pubmed_DisplayBar.sPresentation", "xml"]
["EntrezSystem2.PEntrez.PubMed.Pubmed_ResultsPanel.Pubmed_DisplayBar.sSort", "none"]
["EntrezSystem2.PEntrez.PubMed.Pubmed_ResultsPanel.Pubmed_DisplayBar.FFormat", "docsum"]
["EntrezSystem2.PEntrez.PubMed.Pubmed_ResultsPanel.Pubmed_DisplayBar.FSort", ""]
["email_format", "docsum"]
["EntrezSystem2.PEntrez.PubMed.Pubmed_ResultsPanel.Pubmed_DisplayBar.email_sort", ""]
["email_address", ""]
["email_subj", "31618393+31618392%5Buid%5D+-+PubMed"]
["email_add_text", ""]
["EmailCheck1", ""]
["EmailCheck2", ""]
["BibliographyUser", ""]
["BibliographyUserName", "my"]
["EntrezSystem2.PEntrez.PubMed.Pubmed_ResultsPanel.Pubmed_DisplayBar.FileFormat", "docsum"]
["EntrezSystem2.PEntrez.PubMed.Pubmed_ResultsPanel.Pubmed_DisplayBar.LastPresentation", "docsum"]
["EntrezSystem2.PEntrez.PubMed.Pubmed_ResultsPanel.Pubmed_DisplayBar.Presentation", "xml"]
["EntrezSystem2.PEntrez.PubMed.Pubmed_ResultsPanel.Pubmed_DisplayBar.PageSize", "20"]
["EntrezSystem2.PEntrez.PubMed.Pubmed_ResultsPanel.Pubmed_DisplayBar.LastPageSize", "20"]
["EntrezSystem2.PEntrez.PubMed.Pubmed_ResultsPanel.Pubmed_DisplayBar.Sort", ""]
["EntrezSystem2.PEntrez.PubMed.Pubmed_ResultsPanel.Pubmed_DisplayBar.LastSort", ""]
["EntrezSystem2.PEntrez.PubMed.Pubmed_ResultsPanel.Pubmed_DisplayBar.FileSort", ""]
["EntrezSystem2.PEntrez.PubMed.Pubmed_ResultsPanel.Pubmed_DisplayBar.Format", "text"]
["EntrezSystem2.PEntrez.PubMed.Pubmed_ResultsPanel.Pubmed_DisplayBar.LastFormat", ""]
["EntrezSystem2.PEntrez.PubMed.Pubmed_ResultsPanel.Pubmed_DisplayBar.PrevPageSize", "20"]
["EntrezSystem2.PEntrez.PubMed.Pubmed_ResultsPanel.Pubmed_DisplayBar.PrevPresentation", "docsum"]
["EntrezSystem2.PEntrez.PubMed.Pubmed_ResultsPanel.Pubmed_DisplayBar.PrevSort", ""]
["CollectionStartIndex", "1"]
["CitationManagerStartIndex", "1"]
["CitationManagerCustomRange", "false"]
["EntrezSystem2.PEntrez.PubMed.Pubmed_ResultsPanel.Pubmed_ResultsController.ResultCount", "2"]
["EntrezSystem2.PEntrez.PubMed.Pubmed_ResultsPanel.Pubmed_ResultsController.RunLastQuery", ""]
["EntrezSystem2.PEntrez.PubMed.Pubmed_ResultsPanel.EmailTab.EmailReport", ""]
["EntrezSystem2.PEntrez.PubMed.Pubmed_ResultsPanel.EmailTab.EmailFormat", ""]
["EntrezSystem2.PEntrez.PubMed.Pubmed_ResultsPanel.EmailTab.EmailCount", ""]
["EntrezSystem2.PEntrez.PubMed.Pubmed_ResultsPanel.EmailTab.EmailStart", ""]
["EntrezSystem2.PEntrez.PubMed.Pubmed_ResultsPanel.EmailTab.EmailSort", ""]
["EntrezSystem2.PEntrez.PubMed.Pubmed_ResultsPanel.EmailTab.Email", ""]
["EntrezSystem2.PEntrez.PubMed.Pubmed_ResultsPanel.EmailTab.EmailSubject", ""]
["EntrezSystem2.PEntrez.PubMed.Pubmed_ResultsPanel.EmailTab.EmailText", ""]
["EntrezSystem2.PEntrez.PubMed.Pubmed_ResultsPanel.EmailTab.EmailQueryKey", ""]
["EntrezSystem2.PEntrez.PubMed.Pubmed_ResultsPanel.EmailTab.EmailHID", "1r1WD96DIMUWZetUgmuwE3ML8uzkrFTHG4KcPHT1lo9Sj7pzeetkwhsdsqevcYZ8Uvlm1NtAw_TU8ieO9udbjsyLp8l7gDN9bj"]
["EntrezSystem2.PEntrez.PubMed.Pubmed_ResultsPanel.EmailTab.QueryDescription", ""]
["EntrezSystem2.PEntrez.PubMed.Pubmed_ResultsPanel.EmailTab.Key", ""]
["EntrezSystem2.PEntrez.PubMed.Pubmed_ResultsPanel.EmailTab.Answer", ""]
["EntrezSystem2.PEntrez.PubMed.Pubmed_ResultsPanel.EmailTab.Holding", ""]
["EntrezSystem2.PEntrez.PubMed.Pubmed_ResultsPanel.EmailTab.HoldingFft", ""]
["EntrezSystem2.PEntrez.PubMed.Pubmed_ResultsPanel.EmailTab.HoldingNdiSet", ""]
["EntrezSystem2.PEntrez.PubMed.Pubmed_ResultsPanel.EmailTab.OToolValue", ""]
["EntrezSystem2.PEntrez.PubMed.Pubmed_ResultsPanel.EmailTab.SubjectList", ""]
["EntrezSystem2.PEntrez.DbConnector.Db", "pubmed"]
["EntrezSystem2.PEntrez.DbConnector.LastDb", "pubmed"]
["EntrezSystem2.PEntrez.DbConnector.Term", "31618393+31618392%5Buid%5D"]
["EntrezSystem2.PEntrez.DbConnector.LastTabCmd", ""]
["EntrezSystem2.PEntrez.DbConnector.LastQueryKey", "1"]
["EntrezSystem2.PEntrez.DbConnector.IdsFromResult", ""]
["EntrezSystem2.PEntrez.DbConnector.LastIdsFromResult", ""]
["EntrezSystem2.PEntrez.DbConnector.LinkName", ""]
["EntrezSystem2.PEntrez.DbConnector.LinkReadableName", ""]
["EntrezSystem2.PEntrez.DbConnector.LinkSrcDb", ""]
["EntrezSystem2.PEntrez.DbConnector.Cmd", "displaychanged"]
["EntrezSystem2.PEntrez.DbConnector.TabCmd", ""]
["EntrezSystem2.PEntrez.DbConnector.QueryKey", ""]
["p%24a", "EntrezSystem2.PEntrez.PubMed.Pubmed_ResultsPanel.Pubmed_DisplayBar.sPresentation"]
["p%24l", "EntrezSystem2"]
["p%24st", "pubmed"]

 

Edited by ggt667
Link to comment
Share on other sites

On 1/2/2020 at 11:06 PM, comment said:

Not sure what you mean by "included in my XSL". This is meant to exist on its own, not to be included in another stylesheet. The XML contains data that needs to be imported into multiple tables - and you can only import into one table at a time. Each import needs its own stylesheet. 

 

Hi Comment,

Many years ago, I used to have multiple XSLs for importing PubMed XML. It became a nightmare to keep up with all the PubMed XML changes that were cropping up at the time. Slowly, I managed to consolidate all the XSLs into just one file. I'm aware that it's a lot trickier to handle with a single XSL.

Best,

Daniel

On 1/3/2020 at 8:49 AM, ggt667 said:

Thank you ggt667,

I'll give it a try and report how it went in a few days.

Best,

Daniel

Link to comment
Share on other sites

13 minutes ago, Quito said:

I'm aware that it's a lot trickier to handle with a single XSL.

It's not " a lot trickier", it's impossible. Unless you are importing everything into a single "flat" table, and then use a script to split the imported data into separate tables - which is considerably more work.

--
A side note: using a single XSLT stylesheet would be possible if Filemaker had allowed us to send a parameter to the stylesheet at runtime. 

 

Link to comment
Share on other sites

55 minutes ago, Quito said:

Many years ago, I used to have multiple XSLs for importing PubMed XML. It became a nightmare to keep up with all the PubMed XML changes that were cropping up at the time. Slowly, I managed to consolidate all the XSLs into just one file. I'm aware that it's a lot trickier to handle with a single XSL.

This depends on how you create the XSLTs. What is amazing about XSLT is when you dare to make more of them, and when you work with standards you can make XSLTs to split and join your other XSLTs.

When I make XSLTs that are FileMaker centric, I make them in a way that I have a set of XSLTs that can build other XSLTs and specialized for each subset. Tip you can export complex XMLs from FileMaker, however you can only import them 1 table at the time; none relational. You can use the complex export as a template for how to split import data prior to import.

Edited by ggt667
Link to comment
Share on other sites

15 minutes ago, comment said:

It's not " a lot trickier", it's impossible. Unless you are importing everything into a single "flat" table, and then use a script to split the imported data into separate tables - which is considerably more work.

--
A side note: using a single XSLT stylesheet would be possible if Filemaker had allowed us to send a parameter to the stylesheet at runtime. 

 

Yes, I went with a flat table and am using a Portal to separate the visibility of the abstracts according to language.

Link to comment
Share on other sites

6 minutes ago, ggt667 said:

This depends on how you create the XSLTs. What is amazing about XSLT is when you dare to make more of them, and when you work with standards you can make XSLTs to split and join your other XSLTs.

When I make XSLTs that are FileMaker centric, I make them in a way that I have a set of XSLTs that can build other XSLTs and specialized for each subset. Tip you can export complex XMLs from FileMaker, however you can only import them 1 table at the time; none relational. You can use the complex export as a template for how to split import data prior to import.

At the time, I figured one XML from PubMed would only need one XSL to allow FileMaker to do its magic.  I expect to use the tool I'm developing not only for importing PubMed XML but also for submitting XML from local Medical Journals, as the official tool is quite cumbersome to work with and has created lots of problems when dealing with abstracts in languages other than English.

I read your post about the direct connection to PubMed and the resulting payload but it's way over my head. Sorry I cannot follow the idea.

Link to comment
Share on other sites

2 minutes ago, Quito said:

also for submitting XML from local Medical Journals, as the official tool is quite cumbersome to work with and has created lots of problems when dealing with abstracts in languages other than English.

Removing the need for double entry is a gain in itself.

Link to comment
Share on other sites

19 hours ago, comment said:

It's not " a lot trickier", it's impossible. Unless you are importing everything into a single "flat" table, and then use a script to split the imported data into separate tables - which is considerably more work.

--
A side note: using a single XSLT stylesheet would be possible if Filemaker had allowed us to send a parameter to the stylesheet at runtime.

One of the saddest parts about FileMaker is that we are not able to load XML from the command line, imagine being able to load like:

/Applications/FileMaker\ Pro\ 18\ Advanced/FileMaker\ Pro\ 18\ Advanced.app/Contents/MacOS/\
FileMaker\ Pro\ 18\ Advanced layoutname bymatchingfieldnames << my.fmpxmlresult.xml

from command line

 

or even better

Quote

FileMaker\ Pro\ 18\ Advanced layoutnameasprrootlevel bymatchingfieldnames << $( xsltproc splitForFileMaker.xslt EHF.xml )

With properly naming I would be able to load any document.

Edited by ggt667
Link to comment
Share on other sites

On 1/10/2020 at 8:42 AM, ggt667 said:

One of the saddest parts about FileMaker is that we are not able to load XML from the command line, imagine being able to load like:


/Applications/FileMaker\ Pro\ 18\ Advanced/FileMaker\ Pro\ 18\ Advanced.app/Contents/MacOS/\
FileMaker\ Pro\ 18\ Advanced layoutname bymatchingfieldnames << my.fmpxmlresult.xml

from command line

 

or even better

With properly naming I would be able to load any document.

Indeed, that would be very cool!

Link to comment
Share on other sites

I am afraid I don't see the connection.  I believe the topic is XSLT. If you have a situation where you need to choose which XSLT stylesheet to apply during the import from a "library" of existing stylesheets, there is a solution.

However, I believe such situations are very rare, because usually it's not only a matter of selecting the stylesheet, but also the target table - which cannot be selected dynamically. So you would have a script (or a script step) for each type of import - and the path to the appropriate stylesheet would also be stored there. I recommend you adopt this approach instead of trying to import everything and anything into a single flat table.

 

Edited by comment
Link to comment
Share on other sites

On 1/3/2020 at 6:41 PM, ggt667 said:

Here is the raw query( I'm not sure which parameters are required, far from all are filled in, and many appears to be double up ) that changing the Summary to XML does:

This is a feature I miss in FileMaker being able to import XML using the HTTP verb _POST with a payload.

It appears Brave claims to be FireFox, Safari and Chrome?

The payload has been split by individual parameters below( Far from all are filled in ) 


["term", "31618393+31618392%5Buid%5D+"]
["EntrezSystem2.PEntrez.PubMed.Pubmed_PageController.PreviousPageName", "results"]
["EntrezSystem2.PEntrez.PubMed.Pubmed_PageController.SpecialPageName", ""]
["EntrezSystem2.PEntrez.PubMed.Pubmed_Facets.FacetsUrlFrag", "filters%3D"]
["EntrezSystem2.PEntrez.PubMed.Pubmed_Facets.FacetSubmitted", "false"]
["EntrezSystem2.PEntrez.PubMed.Pubmed_Facets.BMFacets", ""]
["EntrezSystem2.PEntrez.PubMed.Pubmed_ResultsPanel.Pubmed_DisplayBar.sPresentation", "xml"]
["EntrezSystem2.PEntrez.PubMed.Pubmed_ResultsPanel.Pubmed_DisplayBar.sSort", "none"]
["EntrezSystem2.PEntrez.PubMed.Pubmed_ResultsPanel.Pubmed_DisplayBar.FFormat", "docsum"]
["EntrezSystem2.PEntrez.PubMed.Pubmed_ResultsPanel.Pubmed_DisplayBar.FSort", ""]
["email_format", "docsum"]
["EntrezSystem2.PEntrez.PubMed.Pubmed_ResultsPanel.Pubmed_DisplayBar.email_sort", ""]
["email_address", ""]
["email_subj", "31618393+31618392%5Buid%5D+-+PubMed"]
["email_add_text", ""]
["EmailCheck1", ""]
["EmailCheck2", ""]
["BibliographyUser", ""]
["BibliographyUserName", "my"]
["EntrezSystem2.PEntrez.PubMed.Pubmed_ResultsPanel.Pubmed_DisplayBar.FileFormat", "docsum"]
["EntrezSystem2.PEntrez.PubMed.Pubmed_ResultsPanel.Pubmed_DisplayBar.LastPresentation", "docsum"]
["EntrezSystem2.PEntrez.PubMed.Pubmed_ResultsPanel.Pubmed_DisplayBar.Presentation", "xml"]
["EntrezSystem2.PEntrez.PubMed.Pubmed_ResultsPanel.Pubmed_DisplayBar.PageSize", "20"]
["EntrezSystem2.PEntrez.PubMed.Pubmed_ResultsPanel.Pubmed_DisplayBar.LastPageSize", "20"]
["EntrezSystem2.PEntrez.PubMed.Pubmed_ResultsPanel.Pubmed_DisplayBar.Sort", ""]
["EntrezSystem2.PEntrez.PubMed.Pubmed_ResultsPanel.Pubmed_DisplayBar.LastSort", ""]
["EntrezSystem2.PEntrez.PubMed.Pubmed_ResultsPanel.Pubmed_DisplayBar.FileSort", ""]
["EntrezSystem2.PEntrez.PubMed.Pubmed_ResultsPanel.Pubmed_DisplayBar.Format", "text"]
["EntrezSystem2.PEntrez.PubMed.Pubmed_ResultsPanel.Pubmed_DisplayBar.LastFormat", ""]
["EntrezSystem2.PEntrez.PubMed.Pubmed_ResultsPanel.Pubmed_DisplayBar.PrevPageSize", "20"]
["EntrezSystem2.PEntrez.PubMed.Pubmed_ResultsPanel.Pubmed_DisplayBar.PrevPresentation", "docsum"]
["EntrezSystem2.PEntrez.PubMed.Pubmed_ResultsPanel.Pubmed_DisplayBar.PrevSort", ""]
["CollectionStartIndex", "1"]
["CitationManagerStartIndex", "1"]
["CitationManagerCustomRange", "false"]
["EntrezSystem2.PEntrez.PubMed.Pubmed_ResultsPanel.Pubmed_ResultsController.ResultCount", "2"]
["EntrezSystem2.PEntrez.PubMed.Pubmed_ResultsPanel.Pubmed_ResultsController.RunLastQuery", ""]
["EntrezSystem2.PEntrez.PubMed.Pubmed_ResultsPanel.EmailTab.EmailReport", ""]
["EntrezSystem2.PEntrez.PubMed.Pubmed_ResultsPanel.EmailTab.EmailFormat", ""]
["EntrezSystem2.PEntrez.PubMed.Pubmed_ResultsPanel.EmailTab.EmailCount", ""]
["EntrezSystem2.PEntrez.PubMed.Pubmed_ResultsPanel.EmailTab.EmailStart", ""]
["EntrezSystem2.PEntrez.PubMed.Pubmed_ResultsPanel.EmailTab.EmailSort", ""]
["EntrezSystem2.PEntrez.PubMed.Pubmed_ResultsPanel.EmailTab.Email", ""]
["EntrezSystem2.PEntrez.PubMed.Pubmed_ResultsPanel.EmailTab.EmailSubject", ""]
["EntrezSystem2.PEntrez.PubMed.Pubmed_ResultsPanel.EmailTab.EmailText", ""]
["EntrezSystem2.PEntrez.PubMed.Pubmed_ResultsPanel.EmailTab.EmailQueryKey", ""]
["EntrezSystem2.PEntrez.PubMed.Pubmed_ResultsPanel.EmailTab.EmailHID", "1r1WD96DIMUWZetUgmuwE3ML8uzkrFTHG4KcPHT1lo9Sj7pzeetkwhsdsqevcYZ8Uvlm1NtAw_TU8ieO9udbjsyLp8l7gDN9bj"]
["EntrezSystem2.PEntrez.PubMed.Pubmed_ResultsPanel.EmailTab.QueryDescription", ""]
["EntrezSystem2.PEntrez.PubMed.Pubmed_ResultsPanel.EmailTab.Key", ""]
["EntrezSystem2.PEntrez.PubMed.Pubmed_ResultsPanel.EmailTab.Answer", ""]
["EntrezSystem2.PEntrez.PubMed.Pubmed_ResultsPanel.EmailTab.Holding", ""]
["EntrezSystem2.PEntrez.PubMed.Pubmed_ResultsPanel.EmailTab.HoldingFft", ""]
["EntrezSystem2.PEntrez.PubMed.Pubmed_ResultsPanel.EmailTab.HoldingNdiSet", ""]
["EntrezSystem2.PEntrez.PubMed.Pubmed_ResultsPanel.EmailTab.OToolValue", ""]
["EntrezSystem2.PEntrez.PubMed.Pubmed_ResultsPanel.EmailTab.SubjectList", ""]
["EntrezSystem2.PEntrez.DbConnector.Db", "pubmed"]
["EntrezSystem2.PEntrez.DbConnector.LastDb", "pubmed"]
["EntrezSystem2.PEntrez.DbConnector.Term", "31618393+31618392%5Buid%5D"]
["EntrezSystem2.PEntrez.DbConnector.LastTabCmd", ""]
["EntrezSystem2.PEntrez.DbConnector.LastQueryKey", "1"]
["EntrezSystem2.PEntrez.DbConnector.IdsFromResult", ""]
["EntrezSystem2.PEntrez.DbConnector.LastIdsFromResult", ""]
["EntrezSystem2.PEntrez.DbConnector.LinkName", ""]
["EntrezSystem2.PEntrez.DbConnector.LinkReadableName", ""]
["EntrezSystem2.PEntrez.DbConnector.LinkSrcDb", ""]
["EntrezSystem2.PEntrez.DbConnector.Cmd", "displaychanged"]
["EntrezSystem2.PEntrez.DbConnector.TabCmd", ""]
["EntrezSystem2.PEntrez.DbConnector.QueryKey", ""]
["p%24a", "EntrezSystem2.PEntrez.PubMed.Pubmed_ResultsPanel.Pubmed_DisplayBar.sPresentation"]
["p%24l", "EntrezSystem2"]
["p%24st", "pubmed"]

 

Hi ggt667,

Sorry, I forgot to add the link to the official E-Utilities provided:

https://www.ncbi.nlm.nih.gov/books/NBK25497/

Best,

Daniel

Link to comment
Share on other sites

17 hours ago, comment said:

I am afraid I don't see the connection.  I believe the topic is XSLT. If you have a situation where you need to choose which XSLT stylesheet to apply during the import from a "library" of existing stylesheets, there is a solution.

However, I believe such situations are very rare, because usually it's not only a matter of selecting the stylesheet, but also the target table - which cannot be selected dynamically. So you would have a script (or a script step) for each type of import - and the path to the appropriate stylesheet would also be stored there. I recommend you adopt this approach instead of trying to import everything and anything into a single flat table.

 

The initial issue is that I have to do 12 imports to FileMaker to import 1 real world XML document, and I have 7 real world XML document types I import multiple times pr day.

Having FileMaker do the imports is backseat driving.

17 hours ago, comment said:

which cannot be selected dynamically.

What?!?

Edited by ggt667
Link to comment
Share on other sites

This topic is 1559 days old. Please don't post here. Open a new topic instead.

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...

Important Information

By using this site, you agree to our Terms of Use.