Altova Mailing List Archives
>xml-dev Archive Home
>Thread Prev - [xml-dev] When you create a markup language, what do your parent
>Thread Next - Re: [xml-dev] RE: When you create a markup language, what do your
[xml-dev] RE: When you create a markup language, what do your parent
To: "Costello, Roger L." <costello@-----.--->, "xml-dev@-----.---.---"
Date: 9/28/2011 8:02:00 PM
Seems to me, they mean whatever the business they model needs them to mean. The terms "parent" and "child" are a convenient metaphor describing an abstraction that can model many different relationships, including (literally) parent-child, object-property, organism-organ, machine-component, heading-subheading, continent-subcontinent, molecule-atom, antecedent-consequent, husband-wife, genus-species, list-list item, state-county, congress-congress one, employer-employee, boss-subordinate, teacher-student, class-roster, set-members, galaxy-solar system, solar system-planets, planet-satellites, creator-creation, premises-conclusion, inventor-invention, and many other relationships. I could be wrong, Roger, but it seems to me that the XSLT fragment specifies an operation, which when executed, defines a set by selecting its members. Saying that it "defines a truth" seems a bit of a stretch, in the sense that the membership of the set will vary with the instances to which the fragment is applied. The set could end up empty, in which case the statement "For each cost element, c, c is greater than 0" would not be true. For XSLT, I'd say the parent-child terms are operation-output, which is always true since it includes the case where the output is null. Bruce B Cox Director, Usability and Design Division, OCIO, USPTO -----Original Message----- From: Costello, Roger L. [mailto:costello@m...] Sent: 2011 September 26, Monday 08:54 To: xml-dev@l... Subject: When you create a markup language, what do your parent elements mean? What do your children elements mean? Hi Folks, How do you define a parent element and its children? The Geography Markup Language (GML) defines a parent element as corresponding to a real-world object and its children as properties of the real-world object. Thus, parent-child means object-property. For example, a Bridge is a real-world object and thus is the name of the parent element. Total-length, width, and crosses are properties of Bridge and thus are the names of its children: <?xml version="1.0" encoding="UTF-8"?> <Bridge> <total-length>_____</total-length> <width>_____</width> <crosses>_____</crosses> </Bridge> All GML applications treat a parent element as an object and its children as properties of the object. GML takes an Object-Oriented perspective on the meaning of markup. (The following discussion on XSLT may be stated better and/or more accurately; I invite your revision) XSLT takes a different perspective. XSLT takes the perspective that markup is a definition. For example, the following XSLT makes this definition: "For each cost element, c, c is greater than 0": <xsl:for-each select="//cost"> <xsl:variable name="c" select="xs:integer(.)" /> <xsl:value-of select="c > 0" /> </xsl:for-each> Each XSLT processor treats the for-each parent element as an expression of a truth (specified by its children) over the range of values indicated in the select attribute. XSLT takes a Functional perspective on the meaning of markup. Recap: here are two ways of defining the meaning of markup: 1. Object-property 2. Functional definition What other ways are there? When you create a markup language, what do your parent elements mean? What do your children elements mean? /Roger