diff --git a/ko-kr/xml-kr.html.markdown b/ko-kr/xml-kr.html.markdown new file mode 100644 index 00000000..9beef581 --- /dev/null +++ b/ko-kr/xml-kr.html.markdown @@ -0,0 +1,168 @@ +--- +language: xml +filename: learnxml-kr.xml +contributors: + - ["João Farias", "https://github.com/JoaoGFarias"] + - ["Rachel Stiyer", "https://github.com/rstiyer"] + - ["Deepanshu Utkarsh", "https://github.com/duci9y"] +translators: + - ["Wooseop Kim", "https://github.com/linterpreteur"] +lang: ko-kr +--- + +XML은 데이터를 저장하고 전송하기 위해 설계된 마크업 언어입니다. 인간과 기계 모두가 읽을 수 있도록 만들어졌습니다. + +XML은 HTML과는 달리 데이터를 보여주는 방법이나 그 형식을 특정하지 않습니다. 단지 데이터를 담을 뿐입니다. + +차이는 **내용**과 **마크업**에 있습니다. 내용은 무엇이든 될 수 있지만, 마크업은 정의되어 있습니다. + +## 기초 정의 및 도입 + +XML 문서는 기본적으로 자신을 설명하는 *속성*을 가질 수 있으며 자식으로서 텍스트 혹은 다른 요소를 가질 수 있는 *요소*들로 이루어집니다. 모든 XML 문서는 반드시 루트 요소를 가져야 합니다. 루트 요소는 문서에 있는 모든 다른 요소들의 조상입니다. + +XML 파서는 매우 엄격하게 설계되어 있으므로 문서의 형식이 틀렸다면 파싱을 멈출 것입니다. 그러므로 모든 XML 문서는 [(영어) XML 문법 규칙](http://www.w3schools.com/xml/xml_syntax.asp)을 따른다고 보장할 수 있습니다. + +```xml + + + + + + + +내용 + + + + + + + + + + + + + + + + + + + + + + + Text + + + + + + + Text + +Text + +``` + +## XML 문서 + +XML이 유용한 것은 인간도 읽을 수 있다는 것입니다. 다음의 문서는 에릭 레이의 XML 배우기를 포함해 세 권의 책을 파는 서점을 정의한다는 것을 알 수 있습니다. XML 파서 없이도 이렇게 쉽습니다. + +```xml + + + + + 매일 이탈리아 요리 + 지아다 데 라우렌티스 + 2005 + 30.00 + + + 해리 포터 + J K 롤링 + 2005 + 29.99 + + + XML 배우기 + 에릭 레이 + 2003 + 39.95 + + +``` + +## 적격성과 유효성 + +XML 문서는 문법적으로 정확할 경우 *적격*합니다. 하지만 문서 유형 정의(DTD)를 이용하여 문서에 제약을 더 추가할 수 있습니다. 한 문서의 요소와 속성이 DTD 안에 정의되어 있고 그 파일에 특정된 문법을 따른다면 *적격*할 뿐만 아니라 그 DTD에 대하여 *유효*하다고 말합니다. + +```xml + + + + + + + Everyday Italian + Giada De Laurentiis + 2005 + 30.00 + + + + + + + + + + + + + +]> + + + + + + + + + + +]> + + + + Everyday Italian + 30.00 + + +``` + +## DTD 호환성과 XML 스키마 정의 + +DTD는 오래되었기 때문에 지원이 광범위합니다. 불행히도 네임스페이스와 같은 현대적 XML 기능은 DTD에서 지원하지 않습니다. XML 스키마 정의(XSD)가 XML 문서의 문법을 정의하기 위한 DTD의 대체재입니다. + +## Resources + +* [(영어) Validate your XML](http://www.xmlvalidation.com) + +## Further Reading + +* [(영어) XML 스키마 정의 튜토리얼](http://www.w3schools.com/xml/xml_schema.asp) +* [(영어) DTD 튜토리얼](http://www.w3schools.com/xml/xml_dtd_intro.asp) +* [(영어) XML 튜토리얼](http://www.w3schools.com/xml/default.asp) +* [(영어) XPath 쿼리로 XML 파싱하기](http://www.w3schools.com/xml/xml_xpath.asp)