https://srzero.tistory.com/entry/NameSpace%EB%9E%80
NameSpace란 무엇인가?
1) NameSpace가 생기게 된 계기
HTML, WML 등등 MarkUp Language들이 많이 있다. 이들 마크업 언어들의 특징은 무엇인가? 단일화된 표현 방법이다. HTML은 HTML로, WML은 WML로 작성한다. XML은 다수의 마크업 언어로 작성이 가능하다.
다수의 마크업 언어를 가져와 사용하니 엘리먼트가 중복되는 문제점이 발생했다.
엘리먼트를 구분하기 위한 해결책으로 NameSpace가 나오게 되었다.
2) NameSpace의 형태
-> URI로 표현된다. xmls:지정이름="URI"로 구성된다.
3) URL과 URI는 무엇이고 차이점은 무엇일까?
URI > URL : URI는 URL을 포함 하는 개념이다.
URI : 인터넷 상의 자원을 식별하기 위한 문자열의 구성
URL : URI의 한 형태로, 인터넷 상의 자원의 위치와 식별자
차이점 => URL의 인터넷 상의 자원의 위치는 결국은 '하나의 파일 위치'를 나타내는 말
http://img0.gmodules.com/ig/images/korea/logo.gif
이와 같은 형식은 logo.gif라는 인터넷상의 자원 위치를 의미 한다.
이는 URI이면서도 URL라고 말할 수 있다.
다음은 어떠한가.
http://endic.naver.com/endic.nhn?docid=1232950
http://endic.naver.com/란 서버에 위치한 endic.nhn파일은 query string인 docid의 값에 따라 여러가지 결과를 나타낸다.
여기서 URL은 endic.nhn의 위치를 표기한 http://endic.naver.com/endic.nhn 까지이다.
내가 원하는 정보에 도달 하기위해서는 ?docid=1232950라는 식별자(Identifier)가 필요한 것이다.
결국 위의 http://endic.naver.com/endic.nhn?docid=1232950 주소는 URI이긴 하지만 URL은 아니다.
출처: https://lambdaexp.tistory.com/39 [프로그래머 인생길..]
4) XML이 하는 역할은 무엇일까?
XML : eXtensible Markup Language의 약자
- 확장성 있는 마크업 언어 (마크업 언어가 아닌 마크업언어를 정의하기 위한 언어)
- W3C가 사용자와 응용프로그램간, 혹은 응용프로그램 간의 정보를 쉽게 교환
- 전자적으로 데이터를 교환하기 위한 포맷
- HTML의 경우 화면에서 글자만 보여지게 하는 역할이라면, XML은 정보를 태그로 표시할 수 있다.
데이터의 모호함을 방지하고 데이터 내의 고유한 구조를 표현하기 위해 텍스트 기반 방식과 태그 기반 접근 방식을 사용하므로 고도로 구조화된 DB 기록과 비정형 문서에까지 처리할 수 있는 유연성과 확장성의 메커니즘을 제공
출처 : https://soul0.tistory.com/281
5) 마크업 언어란 ?
데이터의 구조를 명기하는 언어의 한 가지, 일반적으로 데이터를 기술하는 정도로만 사용된다.
전자적 마크업의 일반적인 분류
- 표현적 마크업(Presentational markup): 전통적인 워드 처리 시스템이 사용하는 마크업. 위지위그 효과를 내는 문서 텍스트에 포함되니 이진 코드. 이러한 마크업은 사람(저자나 편집자도 포함)의 눈에는 보이지 않도록 설계되는 것이 일반적이다.
- 절차적 마크업(Procedural markup): 마크업은 텍스트에 포함되며 문자를 처리할 프로그램의 명령을 제공한다. troff, LaTeX, 포스트스크립트를 예로 들 수 있다.
- 기술적 마크업(Descriptive markup): 마크업은 문서의 일부에 이름을 다는 데 사용된다. 예로, HTML의 인용의 이름을 다는 <cite> 태그를 들 수 있다.
결론 : XML언어는 태그를 통해 정보를 전달하기 위한 마크업 언어이다.
'2019백업' 카테고리의 다른 글
5) Spring Test와 Junit (0) | 2019.06.25 |
---|---|
4-2) DI 애플리케이션 작성 - JUnit (0) | 2019.06.25 |
4-1) DI 예시 코드 (0) | 2019.06.20 |
4) 스프링프레임워크 DI의 개념 (0) | 2019.06.20 |
3. Spring Framework 개요 (0) | 2019.06.20 |