I am having trouble getting the selectPath(String) method to work the way
I understand that it should.
I am using xmlbeans 2.0 jdk 1.4.2 and have saxon 8.5.1 on my classpath...
I have attached the sample xml file I have loaded.
When I try to run the follwing code:
String declarations = "declare namespace
osca='http://www.courts.mo.gov/osca'; ";
declarations += "declare namespace
case='http://www.courts.mo.gov/case-constraint'; ";
String path = "$this//osca:Case/case:CaseTrackingID/case:ID/text()";
XmlObject[] x = legalEnvelopeDocument.selectPath(declarations + path);
System.out.println("Length: " + x.length);
System.out.println(x.length > 0 ? x[0].toString() : "not found");
I get the following error:
java.lang.RuntimeException: Trying XBeans path engine... Trying Saxon...
FAILED on declare namespace osca='http://www.courts.mo.gov/osca'; declare
namespace case='http://www.courts.mo.gov/case-constraint';
$this//osca:Case/case:CaseTrackingID/case:ID/text()
When I try the following path with the same above code:
String path = "$this//osca:Case/case:CaseTrackingID/case:ID";
It runs but I get two elements back instead of the one that should be
returned based on the xml document.
Do I misunderstand how xpath is supposed to be used or am I just missing a
. or slash somewhere.<?xml version="1.0" encoding="UTF-8"?>
<osca:LegalEnvelope lastUpdatedDate="2005-09-07-05:00" xmlns:osca="http://www.courts.mo.gov/osca" xmlns:case="http://www.courts.mo.gov/case-constraint" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<osca:Legal>
<osca:CourtFiling>
<osca:Court>
<case:OrganizationID>
<case:ID>07</case:ID>
</case:OrganizationID>
<case:OrganizationLocalID>
<case:ID>CY</case:ID>
</case:OrganizationLocalID>
</osca:Court>
<osca:Case>
<case:CaseTrackingID>
<case:ID>ID001</case:ID>
</case:CaseTrackingID>
<case:CaseTitleText>TODO: Set this later using a common business rule</case:CaseTitleText>
<case:CaseDetails>
<case:CaseSecurityText>1</case:CaseSecurityText>
<case:CaseSubtypeText>CA</case:CaseSubtypeText>
</case:CaseDetails>
<case:CaseFiling>
<case:ActivityDate>2005-09-07-05:00</case:ActivityDate>
<case:ActivityTime>21:05:05.916-05:00</case:ActivityTime>
</case:CaseFiling>
<case:CaseLineageCase>
<case:CaseTrackingID>
<case:ID>ID002</case:ID>
</case:CaseTrackingID>
</case:CaseLineageCase>
<case:CaseParticipants>
<case:CaseDefendantParty.Person uid="007">
<case:PersonName>
<case:PersonGivenName>JOHN</case:PersonGivenName>
<case:PersonMiddleName>Q</case:PersonMiddleName>
<case:PersonSurName>PUBLIC</case:PersonSurName>
<case:PersonSuffixName xsi:type="case:PersonNameTextType">JR</case:PersonSuffixName>
</case:PersonName>
<case:DriverLicense>
<case:DriverAuthorizationID.Detailed>
<case:ID>1234</case:ID>
<case:IDIssuingAuthorityText>KS</case:IDIssuingAuthorityText>
<case:IDJurisdictionText>USA</case:IDJurisdictionText>
</case:DriverAuthorizationID.Detailed>
</case:DriverLicense>
<case:PersonAlias>
<case:PersonName>
<case:PersonGivenName>JOHN</case:PersonGivenName>
<case:PersonMiddleName>Q</case:PersonMiddleName>
<case:PersonSurName>PUBLIC</case:PersonSurName>
<case:PersonSuffixName xsi:type="case:PersonNameTextType">JR</case:PersonSuffixName>
</case:PersonName>
</case:PersonAlias>
<case:PersonAssignedIDDetails>
<case:PersonOtherID>
<case:ID>C0001</case:ID>
<case:IDTypeCodeText>SYS</case:IDTypeCodeText>
</case:PersonOtherID>
<case:PersonSSNID>
<case:ID>123456789</case:ID>
</case:PersonSSNID>
</case:PersonAssignedIDDetails>
<case:PersonBirthDate>2005-09-07-05:00</case:PersonBirthDate>
<case:PersonPhysicalDetails>
<case:PersonSexCode>M</case:PersonSexCode>
</case:PersonPhysicalDetails>
<case:PersonSocialDetails>
<case:PersonEthnicityCode>W</case:PersonEthnicityCode>
</case:PersonSocialDetails>
<case:PersonDescriptionText>DFT</case:PersonDescriptionText>
</case:CaseDefendantParty.Person>
</case:CaseParticipants>
</osca:Case>
</osca:CourtFiling>
</osca:Legal>
</osca:LegalEnvelope>
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]