Altova Mailing List Archives


RE: [xsl] Value Mapping

From: "oknam park" <ponda7777@----------->
To:
Date: 6/20/2006 7:44:00 AM
Sorry not for being clear.



Here is my expectation.



xml instance:
<audience>
  <toolfor scheme="GEM">
      Students
  </toolfor>
   <beneficiary scheme=GEM">Student Teachers </beneficiary>
 </audience>

My RDF transformation expectation is that beneficiary has a value from the 
scheme in GEM and it is "Student Teachers", xslt transformation to rdf is 
<dcterms:beneficiary 
rdf:resource="http://purl.oclc.org/gem/instance/GEM-BEN/#StudentTeachers"/>

and if toolfor has a value from the scheme in GEM and it is "Teachers", xslt 
transformation to rdf is

<dcterms:beneficiary 
rdf:resource="http://purl.oclc.org/gem/instance/GEM-MED/#Teachers" />



Here is My xslt:

<xsl:template match="audience">

  <xsl:for-each select="audience/beneficiary[@scheme='GEM']">

      <xsl:choose>

            <xsl:when test=". = 'Students'">

                  <dcterms: beneficiary 
rdf:resource="http://purl.oclc.org/gem/instance/GEM-BEN/#StudentTeachers"/>

           </xsl:when>

      </xsl:choose>

</xsl:for-each>

<xsl:for-each select="audience/toolfor[@scheme='GEM']">

      <xsl:choose>

            <xsl:when test=". = 'Teachers'">

                  <dcterms: beneficiary 
rdf:resource="http://purl.oclc.org/gem/instance/GEM-MED/#Teachers"/>

           </xsl:when>

      </xsl:choose>

</xsl:for-each>



 </xsl:template>



Could you give me some help?



Thanks a lot,



Best regards,
Oknam Park



From: "Michael Kay" <mike@xxxxxxxxxxxx>
Reply-To: xsl-list@xxxxxxxxxxxxxxxxxxxxxx
To: <xsl-list@xxxxxxxxxxxxxxxxxxxxxx>
Subject: RE: [xsl] Value Mapping
Date: Tue, 20 Jun 2006 08:18:27 +0100

It's difficult to help you when we don't know what output you want. Your
code is obviously wrong (the source has "toolfor" where your code has
"beneficiary"; also the template has "audience" as the context node, and
then tries to find a child called "audience", which doesn't exist in your
source sample). But without knowing what you want to achieve, I can't
correct it for you.

Michael Kay
http://www.saxonica.com/

>
> I need value mapping when a value in the subelement is
> matched with some value string.
>
> xml instance:
> <audience>
> <toolfor scheme="GEM">
>    Students
> </toolfor>
      <beneficiary scheme=GEM">Students </beneficiary></audience>



>
> My xslt:
> <xsl:template match="audience">
> <xsl:for-each select="audience/beneficiary[@scheme='GEM']">
>     <xsl:choose>
>        <xsl:when test=". = 'Students'"><gemq:beneficiary
> rdf:resource="http://purl.oclc.org/gem/instance/GEM-BEN/#Stude
> nts"/></xsl:when>
>     </xsl:choose>
> </xsl:for-each>  </xsl:template>
>
> Could you give me some help?

Disclaimer

These Archives are provided for informational purposes only and have been generated directly from the Altova mailing list archive system and are comprised of the lists set forth on www.altova.com/list/index.html. Therefore, Altova does not warrant or guarantee the accuracy, reliability, completeness, usefulness, non-infringement of intellectual property rights, or quality of any content on the Altova Mailing List Archive(s), regardless of who originates that content. You expressly understand and agree that you bear all risks associated with using or relying on that content. Altova will not be liable or responsible in any way for any content posted including, but not limited to, any errors or omissions in content, or for any losses or damage of any kind incurred as a result of the use of or reliance on any content. This disclaimer and limitation on liability is in addition to the disclaimers and limitations contained in the Website Terms of Use and elsewhere on the site.