2009-08-31 4 views
0

나는 요소로 effectiveTime을 가지고 들어오는 XML 파일에서 날짜를 확인 할 수있는 시나리오를 가지고, 해당 요소의 형식은param을 노드로 사용하여 xsl : function을 만들 수 있습니까?

1)

<effectiveTime value="YYYYMMDD"/> 

또는

다음과 같이 그 중 하나가 될 수 있습니다

2) 상술 한 바와 같이 유입 파일 (1 점으로 지정된 형식이 경우

<effectiveTime> 
    <low value="YYYYMMDD"/> 
    <high value="YYYYMMDD"/> 
</effectiveTime> 

), 그럼을 검증해야이 YYYYMMDD인지 아닌지, 다른 형식 (두 번째) 인 경우 낮은 숫자를 확인해야합니다. @value 날짜가 높거나 같음 @value.

들어오는 XML 파일의 몇 곳에이 요소 (<effectiveTime>)가 있습니다.이 시나리오의 유효성을 검사 할 수있는 xsl : function을 하나 작성하고 param으로 노드 (여기서는 effectiveTime)를 보내려고합니다. xsl : 함수.

<xsl:function name="util:validateEffectiveTime" as="xs:boolean"> 
    <!-- I would like to know xml schema data type for the param --> 
    <xsl:param name="effectiveTimeP" as="****"/> 
</xsl:function> 

는 내가 가서 어떤 XSL을 만들 수 있습니다 (제가 PARAM에 할당하는 데 필요한 XML 스키마 데이터 유형을 알려 주시기도 기능을하고 : 그 XSL에 매개 변수로 노드를 수용와 (validateEffectiveTime UTIL) 함수를 effectiveTimeP)?

감사합니다.

답변

0

<effectiveTime> 요소 자체를 함수에 전달하는 경우 함수는 항상 effectiveTimeP 매개 변수에 요소를받습니다. 의심 스럽지만 매개 변수 유형은 선택 사항이므로 완전히 생략 할 수 있습니다.

날짜 유효성 검사의 경우 날짜가 표시 될 수있는 위치가 세 곳이므로 세 가지 다른 위치에서 필요하므로 고유 한 기능으로 넣을 것입니다. 그러나 두 번째 경우에는 날짜가 가장 중요한 부분 우선 순서 (년, 월, 일)이므로 간단한 숫자 비교를 통해 날짜가 다른 순서보다 앞인지 확인할 수 있습니다.

관련 문제