public void testPath() { string adl = System.IO.File.ReadAllText(@"..\..\..\..\java-libs\adl-parser\src\test\resources\adl-test-car.paths.test.adl"); se.acode.openehr.parser.ADLParser parser = new se.acode.openehr.parser.ADLParser(adl); org.openehr.am.archetype.Archetype archetype = parser.parse(); Assert.IsNotNull(archetype); CComplexObject definition = archetype.getDefinition(); // root path CAR Assert.AreEqual("/", definition.path()); // wheels attribute CAttribute wheels = (CAttribute)definition.getAttributes().get(0); Assert.AreEqual("/wheels", wheels.path()); // first WHEEL node CObject firstWheel = (CObject)wheels.getChildren().get(0); Assert.AreEqual("/wheels[at0001]", firstWheel.path()); // description and parts of first WHEEL CComplexObject firstWheelObj = (CComplexObject)firstWheel; CAttribute description = (CAttribute)firstWheelObj.getAttributes().get(0); Assert.AreEqual("/wheels[at0001]/description", description.path()); CAttribute parts = (CAttribute)firstWheelObj.getAttributes().get(1); Assert.AreEqual("/wheels[at0001]/parts", parts.path()); // WHEEL_PART node CObject wheelParts = (CObject)parts.getChildren().get(0); Assert.AreEqual("/wheels[at0001]/parts[at0002]", wheelParts.path()); // something and something_else of WHEEL_PART node //CComplexObject wheelPartsObj = (CComplexObject)wheelParts; //Assert.AreEqual("something of WHEEL_PART", // "/wheels[at0001]/parts[at0002]/something", // wheelPartsObj.getAttributes().get(0).path()); //Assert.AreEqual("something_else of WHEEL_PART", // "/wheels[at0001]/parts[at0002]/something_else", // wheelPartsObj.getAttributes().get(1).path()); }