ComicBookOntology icon indicating copy to clipboard operation
ComicBookOntology copied to clipboard

Having trouble with an RDF/XML multiple children issue

Open elkym opened this issue 4 years ago • 2 comments

I'm not sure if I've organized this wrong, or if there's a deeper problem with how CBO or RDF allows for multiple children of the same type.

I figured that a comic page could have multiple panels... but this is not yet working.

Is this because of some relationship to the sequence property/term? Does it need to built into the same document?

If Mr. Petiya (or anyone else) can help, let me know.

This is the relevant section:

<!-- Comic Page and Panels -->
	<rdf:Description rdf:about="https://dsps.lib.uiowa.edu/gibberishproject/wp-content/uploads/sites/84/2021/04/06-Asterix-and-Cleopatra_p17.jpg">
		<cbo:page>
			<cbo:panel rdf:resource="https://dsps.lib.uiowa.edu/gibberishproject/wp-content/uploads/sites/84/2021/04/06-Asterix-and-Cleopatra_p17-panel6.jpg"></cbo:panel>
			<cbo:panel rdf:resource="https://dsps.lib.uiowa.edu/gibberishproject/wp-content/uploads/sites/84/2021/04/06-Asterix-and-Cleopatra_p17-panel9.jpg"></cbo:panel>
		</cbo:page>
	</rdf:Description>

Here's the entire document:

<rdf:RDF xmlns="http://www.w3.org/2002/07/owl#"
      xml:base="http://www.w3.org/2002/07/owl"
      xmlns:dc="http://purl.org/dc/elements/1.1/"
      xmlns:cbo="http://comicmeta.org/cbo/"
      xmlns:owl="http://www.w3.org/2002/07/owl#"
      xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
      xmlns:rdfs="http://www.w3.org/2000/01/rdf-schema#"
      xmlns:schema="http://schema.org/">

	<!--Comic Series: Asterix (1969) -->
	<rdf:Description rdf:about="https://www.comics.org/series/20005/">
		<cbo:seriesTitle>Asterix</cbo:seriesTitle>
		<cbo:seriesYear>1969</cbo:seriesYear>
		<cbo:volumeNumber>6</cbo:volumeNumber>
		<cbo:issue rdf:resource="https://www.comics.org/issue/315214/"></cbo:issue>
		<cbo:publisher rdf:resource="https://www.comics.org/brand_group/2549/"></cbo:publisher>
		<cbo:language>en</cbo:language>
	</rdf:Description>

	<!-- Comic Issue: Asterix and Cleopatra (1969) #6 -->
	<rdf:Description rdf:about="https://www.comics.org/issue/315214/">
		<cbo:issueNumber>6</cbo:issueNumber>
		<cbo:publicationDate>1969</cbo:publicationDate>
		<cbo:edition>5</cbo:edition>

		<!-- Comic Story: 'Asterix and Cleopatra' -->
		<cbo:story>
		<rdf:Description>
			<cbo:storyTitle>Asterix and Cleopatra</cbo:storyTitle>
			<cbo:character rdf:resource="https://www.wikidata.org/wiki/Q7620503" schema:name="Asterix"></cbo:character>
			<cbo:character rdf:resource="https://www.wikidata.org/wiki/Q715597" schema:name="Obelix"></cbo:character>
			<cbo:character rdf:resource="https://www.wikidata.org/wiki/Q1752911" schema:name="Dogmatix"></cbo:character>
			<cbo:character rdf:resource="https://www.wikidata.org/wiki/Q635" schema:name="Cleopatra"></cbo:character>
			<cbo:character rdf:resource="https://www.wikidata.org/wiki/Q3188509" schema:name="Julius Caesar"></cbo:character>
			<cbo:writer rdf:resource="https://viaf.org/viaf/22142570/" schema:name="Rene Goscinny"></cbo:writer>
		</rdf:Description>
		</cbo:story>
	</rdf:Description>
	  
	<!-- Comic Page and Panels -->
	<rdf:Description rdf:about="https://dsps.lib.uiowa.edu/gibberishproject/wp-content/uploads/sites/84/2021/04/06-Asterix-and-Cleopatra_p17.jpg">
		<cbo:page>
			<cbo:panel rdf:resource="https://dsps.lib.uiowa.edu/gibberishproject/wp-content/uploads/sites/84/2021/04/06-Asterix-and-Cleopatra_p17-panel6.jpg"></cbo:panel>
			<cbo:panel rdf:resource="https://dsps.lib.uiowa.edu/gibberishproject/wp-content/uploads/sites/84/2021/04/06-Asterix-and-Cleopatra_p17-panel9.jpg"></cbo:panel>
		</cbo:page>
	</rdf:Description>

	<!-- Panel and Speech Balloons -->
	<rdf:Description rdf:about="https://dsps.lib.uiowa.edu/gibberishproject/wp-content/uploads/sites/84/2021/04/06-Asterix-and-Cleopatra_p17-panel6.jpg">
		<cbo:balloon rdf:resource="https://dsps.lib.uiowa.edu/gibberishproject/wp-content/uploads/sites/84/2021/04/06-Asterix-and-Cleopatra_p17-panel6-balloon1.jpg"></cbo:balloon>
		<cbo:balloon rdf:resource="https://dsps.lib.uiowa.edu/gibberishproject/wp-content/uploads/sites/84/2021/04/06-Asterix-and-Cleopatra_p17-panel6-balloon2.jpg"></cbo:balloon>
		<cbo:balloon rdf:resource="https://dsps.lib.uiowa.edu/gibberishproject/wp-content/uploads/sites/84/2021/04/06-Asterix-and-Cleopatra_p17-panel6-balloon3.jpg"></cbo:balloon>
	</rdf:Description>

	<!-- Panel and Speech Balloons -->
	<rdf:Description rdf:about="https://dsps.lib.uiowa.edu/gibberishproject/wp-content/uploads/sites/84/2021/04/06-Asterix-and-Cleopatra_p17-panel9.jpg">
		<cbo:balloon rdf:resource="https://dsps.lib.uiowa.edu/gibberishproject/wp-content/uploads/sites/84/2021/04/06-Asterix-and-Cleopatra_p17-panel9-balloon1.jpg" ></cbo:balloon>
	</rdf:Description>

</rdf:RDF>

elkym avatar Apr 12 '21 20:04 elkym

This looks pretty good so far!

The child node of cbo:page needs to be a rdf:Description if the element does not contain a rdf:resource attribute.

	<!-- Comic Page and Panels -->
	<rdf:Description rdf:about="https://dsps.lib.uiowa.edu/gibberishproject/wp-content/uploads/sites/84/2021/04/06-Asterix-and-Cleopatra_p17.jpg">
		<cbo:page>
			<rdf:Description>
				<cbo:panel rdf:resource="https://dsps.lib.uiowa.edu/gibberishproject/wp-content/uploads/sites/84/2021/04/06-Asterix-and-Cleopatra_p17-panel6.jpg"></cbo:panel>
				<cbo:panel rdf:resource="https://dsps.lib.uiowa.edu/gibberishproject/wp-content/uploads/sites/84/2021/04/06-Asterix-and-Cleopatra_p17-panel9.jpg"></cbo:panel>
			</rdf:Description>
		</cbo:page>
	</rdf:Description>

Another way to model this could be:

	<!-- Comic Issue: Asterix and Cleopatra (1969) #6 -->
	<rdf:Description rdf:about="https://www.comics.org/issue/315214/">
		<cbo:issueNumber>6</cbo:issueNumber>
		<cbo:publicationDate>1969</cbo:publicationDate>
		<cbo:edition>5</cbo:edition>

		<!-- Comic Story: 'Asterix and Cleopatra' -->
		<cbo:story>
		<rdf:Description>
			<cbo:storyTitle>Asterix and Cleopatra</cbo:storyTitle>
                         ...
		</rdf:Description>
		</cbo:story>
		<cbo:page rdf:resource="https://dsps.lib.uiowa.edu/gibberishproject/wp-content/uploads/sites/84/2021/04/06-Asterix-and-Cleopatra_p17.jpg"></cbo:page>
	</rdf:Description>
	  
	<!-- Comic Page and Panels -->
	<rdf:Description rdf:about="https://dsps.lib.uiowa.edu/gibberishproject/wp-content/uploads/sites/84/2021/04/06-Asterix-and-Cleopatra_p17.jpg">
		<cbo:panel rdf:resource="https://dsps.lib.uiowa.edu/gibberishproject/wp-content/uploads/sites/84/2021/04/06-Asterix-and-Cleopatra_p17-panel6.jpg"></cbo:panel>
		<cbo:panel rdf:resource="https://dsps.lib.uiowa.edu/gibberishproject/wp-content/uploads/sites/84/2021/04/06-Asterix-and-Cleopatra_p17-panel9.jpg"></cbo:panel>
	</rdf:Description>

I think the question I would have though is does cbo:page describe the comic itself or the story?

seanpetiya avatar Apr 13 '21 03:04 seanpetiya

This is very helpful. I'm undecided about the story element at this point. There are lots of pieces of information that could be added here, but at this point, I'm mostly focused on the page/panel/balloon linking, and I've included story as an element for correlative purposes, given that some characters consistently speak in unusual ways, reflected in pictographs, scripts, stylizations, etc.

elkym avatar Apr 13 '21 16:04 elkym