[Date Prev]
| [Thread Prev]
| [Thread Next]
| [Date Next]
--
[Date Index]
| [Thread Index]
XML-vocabulary-specific programming idioms
- From: "Costello, Roger L." <costello@mitre.org>
- To: "xml-dev@lists.xml.org" <xml-dev@lists.xml.org>
- Date: Wed, 27 Apr 2011 06:10:46 -0400
Hi Folks,
There are programming idioms that are common across many applications, such as: map, fold, filter.
There are application-specific programming idioms.
Finally, there are XML-language-specific programming idioms. For example, there are common activities that are performed on XML Schemas (see below for an example), common programming activities that are performed on SVG documents, common programming activities that are performed on XBRL documents, and so forth. Has anyone put together a list of programming idioms for the various XML vocabularies?
/Roger
One activity that I frequently perform when processing XML Schemas is this:
I have a simpleType and I need to know
all the constraints on it.
Example: consider this simpleType:
<xsd:simpleType name="BostonAreaSurfaceElevation">
<xsd:restriction base="elev:EarthSurfaceElevation">
<xsd:minInclusive value="0"/>
<xsd:maxInclusive value="120"/>
</xsd:restriction>
</xsd:simpleType>
What are all the constraints on it? Well, it identifies a base type, elev:EarthSurfaceElevation. That base type may contain some constraints that must be considered. Further, that base type may have a base type, which has a base type, etc. That entire dependency tree must be considered.
Determining all the constraints on a simpleType is an important programming idiom (at least, it is for my applications).
What would you name this programming idiom? I have been naming it "simpleType accumulated restrictions" but wonder if there is a better name?
Even better, is there a functional programming language (e.g., Haskell) function that does this kind of activity, or an analogous activity?
[Date Prev]
| [Thread Prev]
| [Thread Next]
| [Date Next]
--
[Date Index]
| [Thread Index]