Solved

XML and DTD

Posted on 2013-12-10
1
419 Views
Last Modified: 2013-12-17
I need to work on a proj that uses XSD's.  I am ok with xslt and xsd's but never used an XSD.

I am trying to use http://validator.w3.org/ to validate.  I am guessing I need to open the XML file in the validator.  I receive the below error.

The following notes and warnings highlight missing or conflicting information which caused the validator to perform some guesswork prior to validation, or other things affecting the output below. If the guess or fallback is incorrect, it could make validation results entirely incoherent. It is highly recommended to check these potential issues, and, if necessary, fix them and re-validate the document.

    Warning Missing "charset" attribute for "text/xml" document.

    The HTTP Content-Type header (text/xml) sent by your web browser (Mozilla/5.0 (Windows NT 6.1; WOW64; rv:25.0) Gecko/20100101 Firefox/25.0) did not contain a "charset" parameter, but the Content-Type was one of the XML text/* sub-types.

    The relevant specification (RFC 3023) specifies a strong default of "us-ascii" for such documents so we will use this value regardless of any encoding you may have indicated elsewhere.

    If you would like to use a different encoding, you should arrange to have your browser send this new encoding information.


Below is dummy data.

<!ELEMENT employee (name, address, region)>
<!ELEMENT name (#PCDATA)>
<!ELEMENT address (#PCDATA)>
<!ELEMENT region (#PCDATA)>
<!ATTLIST region language CDATA #REQUIRED>

Open in new window


<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!DOCTYPE employee SYSTEM "emp.dtd"> 
<employee>
  <name>Mr. Bill</name>
  <address>123 Main Street</address>
  <region language="English">Yes</region>
  <region language="Spanish">Si</region>
</employee>

Open in new window


Thanks
0
Comment
Question by:CipherIS
[X]
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
1 Comment
 
LVL 60

Accepted Solution

by:
Geert Bormans earned 500 total points
ID: 39710203
Some comments

- there is an error in your XML that makes the validation fail. You have two region elements. So you would better add a "+" for region in your DTD, like
<!ELEMENT employee (name, address, region+)>

- I would not use an online validator for DTD development, they are slow, and use old validators. I would definitely work from an XML IDE, such as www.oxygenxml.com

- http://validator.w3.org/ has a hard time finding your SYSTEM declaration for the DTD in a local place. In order for it to work you could put the DTD on a server and reference through its URL, like
<!DOCTYPE employee SYSTEM "http://mydomain.be/emp.dtd">
0

Featured Post

Resolve Critical IT Incidents Fast

If your data, services or processes become compromised, your organization can suffer damage in just minutes and how fast you communicate during a major IT incident is everything. Learn how to immediately identify incidents & best practices to resolve them quickly and effectively.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Suggested Solutions

Title # Comments Views Activity
XML SQL 8 32
Why is PHP Storm giving me an undefined constant error? 4 57
XML Node Counting in MS Access VBA 4 81
Force XMLSEQUENCE to return empty tags for null values. 10 45
The Problem How to write an Xquery that works like a SQL outer join, providing placeholders for absent data on the outer side?  I give a bit more background at the end. The situation expressed as relational data Let’s work through this.  I’ve …
Many times as a report developer I've been asked to display normalized data such as three rows with values Jack, Joe, and Bob as a single comma-separated string such as 'Jack, Joe, Bob', and vice versa.  Here's how to do it. 
In a recent question (https://www.experts-exchange.com/questions/29004105/Run-AutoHotkey-script-directly-from-Notepad.html) here at Experts Exchange, a member asked how to run an AutoHotkey script (.AHK) directly from Notepad++ (aka NPP). This video…
Attackers love to prey on accounts that have privileges. Reducing privileged accounts and protecting privileged accounts therefore is paramount. Users, groups, and service accounts need to be protected to help protect the entire Active Directory …
Suggested Courses

732 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question