# This is the Mathematical Markup Language (MathML) 2.0, an XML
# application for describing mathematical notation and capturing
# both its structure and content.
# 
# Copyright 1998-2009 W3C (MIT, ERCIM, Keio)
# 
# Use and distribution of this code are permitted under the terms
# W3C Software Notice and License
# http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231

namespace a = "http://relaxng.org/ns/compatibility/annotations/1.0"
namespace m = "http://www.w3.org/1998/Math/MathML"


## Content  MathML
include "mathml3-content.rnc" inherit = m

## Presentation MathML
include "mathml3-presentation.rnc" inherit = m

## math and semantics common to both Content and Presentation
include "mathml3-common.rnc" inherit = m
