IEEE 1073 Testing Mary Brady Rick Rivello NIST
Schema Files n Created by ASN2XSD tool n Check Data Types n Ensure Range n Check for proper XML structures n Check syntax of XML
SCHEMA FILES(Atlanta) n ROSE.xsd n DIM.xsd n 7.1.2COMMONDATATYPE.xsd n AssociateUserInfo.xsd n Association.xsd n Association_Request.xsd n Association_Response.xsd n CMIP.xsd n CPR.xsd n MDAP-TD.xsd n TD.xsd n Vent-all.xsd
SCHEMA FILE (Current) n X73-FINAL.xsd X73-FINAL.xsd
ROSE ROIVapdu ::= SEQUENCE { invokeID InvokeIDType, operation-value OPERATION, argument ANY DEFINED BY operation-value } <xsd:sequence> </xsd:sequence></xsd:complexType>
ROSE (cont) </xsd:simpleType>
ROSE (cont) <xsd:simpleType> <xsd:annotation><xsd:appinfo><objsys:EnumInfo>... </objsys:EnumInfo></xsd:appinfo></xsd:annotation>...<xsd:enumerationvalue="cmipCreate"> </xsd:restriction></xsd:simpleType></xsd:union></xsd:simpleType>
XML INSTANCE FILES n AS-SetOperational-State.xml n AS-SetOperational-StateConfirm.xml n ASSEReportNoActiveAlerts.xml n ASSEReportThreeActiveAlerts.xml n CCSInvoke.xml CCSInvoke.xml n CCSResult.xml n CSOCNERConfirmation.xml n CSOCNEReport1.xml n CSOCNEReport2.xml n CSOCNEReport3.xml
XML INSTANCE FILES (cont) n ESGAResponse.xml n ESSALRequest.xml n ESSOSConfirm.xml n ESSOState.xml n ESSSLConfirm.xml n ESSSLRequest.xml n ESUSERConfirmation.xml n ESUSEReport1.xml n ESUSEReport2.xml n ESUSEReportsraf.xml
XML INSTANCE FILES (cont) n FPS-SETOperatinal-State.xml n FPS-SETOperatinal-StateConfirm.xml n FPSBSEReport.xml n MDS-Attribute-UpdateER.xml n MDS-Attribute-UpdateERResult.xml n MDS-GETAttributeGroups.xml n MDS-GETAttributeGroupsResponse.xml n Mds-Create-NotificationER.xml n Mds-Create-NotificationERConfirmation.xml
XML Instance Files Test Environment n ECLIPSE IDE used to run java test code. n XMLBeans Tool that allows you to access XML in a Java friendly way. n SCOMP XMLBean command that compiles an XML schema into XMLBean classes and metadata.
MDER Encode/Decode n Commercial Package Node-locked license $6, Node-locked license $6, Deployment license $20, Deployment license $20, n Freeware SNACC (Sample Neufeld ASN.1 to C Compiler) SNACC (Sample Neufeld ASN.1 to C Compiler)
SNACC n Snacc compiles ASN.1 modules into C or type tables. n Generated C code contains data structures and routines to convert values between the internal C representation and the corresponding BER. n Process of converting ASN.1 values from its C representation into an equivalent BER data value is called encoding and the reverse process is called decoding.
SNACC Issues n What are the differences between BER and MDER? n What code needs to be changed to handle MDER? n How will SNACC know when it’s working on BER (Association)/MDER?
Medical Device Testing Medical Device Tests Atomic Tests Attribute Get’s/Set’s Dynamic Tests Event Reporting Alarm Reporting Scanners Medical Device Tests Atomic Tests Attribute Get’s/Set’s Dynamic Tests Event Reporting Alarm Reporting Scanners Test Accelerator Test Definitions Datatype Support Data Value Generation Test Accelerator Test Definitions Datatype Support Data Value Generation Schema Definitions: PDU – Structure DIM – Medical Data IEEE Medical Device Specifications ValidatePDU Tool: Check messages for: - - Syntax - - Structure - - Correct Data
ValidatePDU Schema PDU Definitions Definitions Definitions Ventilator PDU Definitions (Schema Def’s) Managed Object Definitions (Schema Def’s) ASN.1 Definitions Manager Agent XML
ValidatePDU Tool The value 'aaa' of element 'invokeID' is not valid. 'aaa' is not a valid 'integer' value
Next Steps n Can SNACC be modified to encode/decode MDER? n Build Demo Tool n Build Test Generator based on Schema
Tests n Format?? n Test Environment??