Sorting 按两个字段之一排序

Sorting 按两个字段之一排序,sorting,xslt,xslt-1.0,Sorting,Xslt,Xslt 1.0,我试图按照两个字段中的一个对XML节点集进行排序,条件是另一个字段中的值 <xsl:for-each select="CampusCourseDeliveryItem"> <xsl:sort select="OffCampus"/> <xsl:sort select="OrganisationName" /> <xsl:sort select="OffCampusLocation"/> <!-- code to di

我试图按照两个字段中的一个对XML节点集进行排序,条件是另一个字段中的值

<xsl:for-each select="CampusCourseDeliveryItem">
    <xsl:sort select="OffCampus"/>
    <xsl:sort select="OrganisationName" />
    <xsl:sort select="OffCampusLocation"/>

<!-- code to display node goes here -->
预期排序顺序:

Adelaide
Berlin
Chicago
Detroit

按以下表达式排序:

concat(
substring(OffCampusLocation, 1, string-length(OffCampusLocation) * (OffCampus='Y')),
substring(OrganisationName, 1, string-length(OrganisationName) * (OffCampus='N'))       
)

按以下表达式排序:

concat(
substring(OffCampusLocation, 1, string-length(OffCampusLocation) * (OffCampus='Y')),
substring(OrganisationName, 1, string-length(OrganisationName) * (OffCampus='N'))       
)

按以下表达式排序:

concat(
substring(OffCampusLocation, 1, string-length(OffCampusLocation) * (OffCampus='Y')),
substring(OrganisationName, 1, string-length(OrganisationName) * (OffCampus='N'))       
)

按以下表达式排序:

concat(
substring(OffCampusLocation, 1, string-length(OffCampusLocation) * (OffCampus='Y')),
substring(OrganisationName, 1, string-length(OrganisationName) * (OffCampus='N'))       
)
这几乎奏效了。。。我不得不将
校外空间
改为
标准化空间(校外)!='Y'
处理校外为空的情况。(在我的示例数据中,我没有给出一个示例,你没有考虑到这一点,这很公平。)这几乎奏效了。。。我不得不将
校外空间
改为
标准化空间(校外)!='Y'
处理校外为空的情况。(在我的示例数据中,我没有给出一个示例,你没有考虑到这一点,这很公平。)这几乎奏效了。。。我不得不将
校外空间
改为
标准化空间(校外)!='Y'
处理校外为空的情况。(在我的示例数据中,我没有给出一个示例,你没有考虑到这一点,这很公平。)这几乎奏效了。。。我不得不将
校外空间
改为
标准化空间(校外)!='Y'
处理校外为空的情况。(在我的示例数据中,我没有给出一个示例,你没有考虑到这一点,这很公平。)