XSLT 스타일 시트를 사용하여 하나의 XML 문서를 다른 XML 형식으로 변환하는 새 프로젝트가 지정되었습니다.XSLT for XML to XML quandary
저는 지난 4 시간 동안 StackOverflow 및 온라인 다른 곳에서 원하는 결과를 얻을 수있는 방법을 찾으려고 애썼지 만 찾을 수있는 방법은 없습니다.
여기에 원래의 문서 형식입니다 :
<?xml version="1.0"?>
<PODOrderSheet_Main>
<estimate>
<customer>LINFNC</customer>
<jobType>5020</jobType>
<JobParts>
<JobPart>
<jobPart>01</jobPart>
<contactNum/>
<JobNotes>
<JobNote>
<department>001</department>
<jobPart>01</jobPart>
<note><![CDATA[Rush Order]]></note>
</JobNote>
</JobNotes>
</JobPart>
</JobParts>
</estimate>
<estimate>
<customer>LINFNC</customer>
<jobType>5020</jobType>
<JobParts>
<JobPart>
<jobPart>01</jobPart>
<contactNum/>
<JobNotes>
<JobNote>
<department>001</department>
<jobPart>01</jobPart>
<note><![CDATA[Rush Order]]></note>
</JobNote>
</JobNotes>
</JobPart>
</JobParts>
</estimate>
<estimate>
<customer>LINFNC</customer>
<jobType>5020</jobType>
<JobParts>
<JobPart>
<jobPart>01</jobPart>
<contactNum/>
<JobNotes>
<JobNote>
<department>001</department>
<jobPart>01</jobPart>
<note><![CDATA[Rush Order]]></note>
</JobNote>
</JobNotes>
</JobPart>
</JobParts>
</estimate>
</PODOrderSheet_Main>
그리고 여기가 볼 필요가있다 방법은 다음과 같습니다
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE estimate>
<estimate>
<customer>LINFNC</customer>
<jobType>5020</jobType>
<JobParts>
<JobPart>
<jobPart>01</jobPart>
<contactNum/>
<JobNotes>
<JobNote>
<department>001</department>
<jobPart>01</jobPart>
<note><![CDATA[Rush Order]]></note>
</JobNote>
</JobNotes>
</JobPart>
<JobPart>
<jobPart>02</jobPart>
<contactNum/>
<JobNotes>
<JobNote>
<department>001</department>
<jobPart>02</jobPart>
<note><![CDATA[Rush Order]]></note>
</JobNote>
</JobNotes>
</JobPart>
<JobPart>
<jobPart>03</jobPart>
<contactNum/>
<JobNotes>
<JobNote>
<department>001</department>
<jobPart>03</jobPart>
<note><![CDATA[Rush Order]]></note>
</JobNote>
</JobNotes>
</JobPart>
</JobParts>
</estimate>
나는 아무 문제없이 모든 요소를 복사 할 수 있어요. 내가 갇혀있는 곳은 customer
과 jobType
요소의 첫 번째 항목 만 필요하지만 여러 estimate
블록의 모든 포함 된 JobParts
은 모두 jobPart
요소에 해당하는 순서대로 번호가 매겨져 있습니다.
누군가가이 프로젝트의 올바른 방향으로 나를 가리킬 수 있다면 나는 매우 감사 할 것입니다.
이이 문제를 그룹화의 예입니다 무엇을해야 할 것 같다, 그래서 해결하기 위해 너무 열심히해서는 안됩니다. XSLT1.0 또는 XSLT2.0을 사용하고 있습니까? 문제가 해결되는 방법에 차이가 있습니까? 또한 고객이 서로 다른 'jobType'요소를 가질 수 있을까요? 어떤 경우에, 당신은 그들이 같은 그룹에 개별적으로 또는 함께 그룹화되기를 원할 것입니까? 감사! –
입력 예제가 출력과 일치하지 않는 것 같습니다. 예 : 입력에 ''등이 없습니다. –
안녕하세요. 응답 해 주셔서 감사합니다. 이것은 XSLT 1.0이며 jobType 요소는 항상 첫 번째 예상 블록에서 수집 된 요소입니다. –