the python arxml parser

pip install armodel==1.1.0


1. py-armodel

1.1. Purpose

To support AUTOSAR model with python

1.2. Reference Documents

  1. AUTOSAR_TPS_XMLSchemaProductionRules.pdf
  2. AUTOSAR_TPS_ARXMLSerializationRules.pdf
Version Documentation Travis CI Coverage Status Pypi
GitHub version Documentation Status Coverage Status PyPI version

1.3. How to create the distribution and upload to pypi

  1. Run python bdist_wheel to generate distribution
  2. Run twine check dist/* to check the validation of distribution
  3. Run twine upload dist/* to upload to pypi repository
  4. Check the website to find out it works or not

And more details can be found at

1.4. How to perform Unit test

  • Run pip install pytest pytest-cov to install pytest.
  • Run pytest --cov=armodel --cov-report term-missing to verify all the functionality.

1.5. How to create a distribution and wheel

  • Run python sdist bdist_wheel --universal

1.6. How to create the document

  1. Run pip install sphinx to install the necessary document

1.7. Heritage

- ARObject
  - Referrable
    - MultilanguageReferrable
      - Identifiable
        - PackageableElement
          - ARElement
            - AtpType
              - AutosarDataType
              - PortInterface
                - DataInterface
                  - NvDataInterface
                  - ParameterInterface
                  - SenderReceiverInterface
            - BswModuleEntry
          - Implementation
            - BswImplementation
        - AtpFeature
          - AtpPrototype
            - AtpPrototype
              - DataPrototype
                - AutosarDataPrototype
                  - VariableDataPrototype
                - ApplicationCompositeElementDataPrototype
                  - ApplicationArrayElement
                  - ApplicationRecordElement
          - AtpStructureElement
            - BswModuleDescription
        - ExecutableEntity
        - SwcBswMapping
  - ValueSpecification
    - ConstantReference

1.8. CLI usages

1.8.1. arxml-dump

Dump all the arxml data to screen

arxml-dump --arxml arg -h

--arxml arg The file name of arxml data

-h show the help information

1.8.2. Example for arxml-dump

Dump the arxml data from test1.arxml and test2.arxml

arxml-dump --arxml test1.arxml --arxml test2.arxml

1.9. API

1.9.1. Constructor

  ARXMLParser(options={"warning": True})

1.10. Change notes:

Version 0.1.1

Add the ARRAY category support for ImplementationDataType

Version 0.1.2

Add the AsynchronousServerCallPoint support for ARXML

Version 0.1.3

Fix the attribute intervalType of Limit is empty issue.

Version 1.0.0

  1. Add the logging support
  2. Add the option to disable exception raised.
  3. Add the BswMD support

Version 1.1.0

  1. Add the InitEvent support. (Issue #5)
  2. Add the DataReceiveEvent support. (Issue #5)
  3. Add the SwcModeSwitchEvent support. (Issue #5)