[Date Prev]
| [Thread Prev]
| [Thread Next]
| [Date Next]
--
[Date Index]
| [Thread Index]
Re: [xml-dev] Calculating how many XML elements will be needed,given the number of data items
- From: Liam R E Quin <liam@w3.org>
- To: "Costello, Roger L." <costello@mitre.org>
- Date: Sat, 12 Apr 2014 16:34:21 -0400
On Sat, 2014-04-12 at 19:23 +0000, Costello, Roger L. wrote:
> Hi Folks,
>
> Suppose the below Bookstore grammar is expressed in XML Schema. How
> many XML elements will be needed to mark up this data:
Do you count the elements in the Schema?
You didn't need any elements at all in your email, so the minimum (but
perhaps unsatisfactory) answer is zero.
A single element,
<pineapple>Wisdom of Crowds non-fiction Springer Society of Mind
non-fiction Harvard Press</pineapple>
captures all of the information and could easily be represented in an
XML Schema.
If we require punctuation, we can match using a regular expression,
<starfruit>Wisdom of Crowds, non-fiction, Springer—Society of Mind
(Harvard Press)</starfruit>
But since you've given a grammar we don't need to do that. We could use
XSLT to match the grammar and produce something perhaps using the six
named productions in your grammar,
<instanceOfParseTreeMatchingGrammarByRoger>
<node><name>Bookstore</name>
<node><name>Book</name>
<node><name>Title</name><t ref="1"/></node>
<node><name>Other</name>
<node><name>Genre</name><t ref="2" /></node>
</node><!--* Other *-->
</node><!--* book *-->
[. . .]
</node><!--* Bookstore *-->
<t n="1">Wisdom of Crowds</t>
<t n="2">non-fiction</t>
</instanceOfParseTreeMatchingGrammarByRoger>
Here I've used four element types and have represented (or suggested how
to represent) every node a possible parse tree.
But in fact it's not necessary to represent all of the nodes.
<Bookstore><title>...</title><genre>...</genre><title>...
is perfectly unambiguous.
A single book wrapper element would facilitate processing in some ways.
So it depends on your purpose and whether your target audience is a
bunch of language theorists and mathematicians comfortable with formal
grammars or a bunch of librarians and museum curators comfortable with
complex metadata or .... someone else ;)
> Here is the grammar:
>
> Bookstore --> Book Bookstore
> Bookstore --> Title Other
> Book --> Title Other
> Other --> Genre Publisher
> Title --> "Wisdom of Crowds"
> Title --> "Six Great Ideas"
> Title --> "Society of Mind"
> Genre --> "fiction"
> Genre --> "non-fiction"
> Publisher --> "Springer"
> Publisher --> "MIT Press"
> Publisher --> "Harvard Press"
--
Liam Quin - XML Activity Lead, W3C, http://www.w3.org/People/Quin/
Pictures from old books: http://fromoldbooks.org/
Ankh: irc.sorcery.net irc.gnome.org freenode/#xml
[Date Prev]
| [Thread Prev]
| [Thread Next]
| [Date Next]
--
[Date Index]
| [Thread Index]